2010-09-24 41 views
1

我有一個.JSP頁面與自定義標籤不計算表達式; c和FMT標籤計算表達式

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> 
<%@ taglib uri="/WEB-INF/mytags.tld" prefix="mytags" %> 

開始用具有下列內容的mytags.tld頭:

<taglib> 
<tlib-version>1.0</tlib-version> 
<jsp-version>1.2</jsp-version> 

表達式是由核心標籤支持,以便當我做以下事情時:

<c:out value="${myPageBean.firstName}"/> 

該表達式按預期進行評估。

但是,當我嘗試讓自定義標記評估一個表達式時,.jsp拒絕編譯。

<mytags:sayHello firstName="${myPageBean.firstName}"/> 

如果表達式未在該網頁上的任何地方工作,我可以更輕鬆地整理了這一點,但它是有意義的核心標籤像預期的那樣,而我的自定義標籤不?我正在使用Tomcat 4.1

+0

發佈您的mytags.tld文件和您的.jsp。 – 2010-09-24 17:33:12

回答

1

由於您使用的是Tomcat 4.1,因此您有JSP 1.2。 EL支持在2.0版本的JSP規範中引入,所以你沒有它。因此,JSTL 1.0使用自己的表達式語言實現,可通過ExpressionUtil訪問。

+0

這正是我正在尋找的。謝謝。 – Fil 2010-09-24 18:41:45