2009-05-22 6 views
1

jstlタグ内で式言語を使用しようとしていますが、奇妙なエラーが発生します。 「属性値が任意の式を受け入れないタグファイル内のTLDまたは属性の指示によると、」JSTLタグでELを使用しようとして問題が発生しました

のコードは次のようなものです:

<c:out value="${header['host']}"/> 

しかし、次のコードがうまく実行:

${header["host"]} 
<c:out value="hello"/> 

jstl.jarとstandard.jarをWEB-INF/lib /(クラスパス)に追加しました。 JSTLを含むための指令が標準です:あなたはあなたのtaglib宣言でこのURLを使用する必要がありますTomcatの6.0.16

答えて

5

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> 

JSTLのバージョンは1.1.2

アプリケーションサーバです。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 

をweb.xmlはこの記事では説明しているサーブレット仕様に2.4+

を宣言していることを確認してください:How to Reference and Use JSTL in your Web Application

1

あなたのweb.xmlにウェブアプリのバージョンを確認

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 

とし、jstl-version.jarのMETA-INFのjstl uriをチェックし、c.tld、fmt.tldなどを選択します。libのバージョンは、

である必要があります。
<tlib-version>1.1</tlib-version> 
関連する問題