自定义标记不评估表达式; c和fmt标签正在评估表达式

时间:2010-09-24 16:23:47

标签: java jsp el

我有一个以

开头的 .jsp 页面
<%@ 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

1 个答案:

答案 0 :(得分:1)

由于您使用的是Tomcat 4.1,因此您使用的是JSP 1.2。在2.0版本的JSP规范中引入了EL支持,因此您没有它。因此,JSTL 1.0使用自己的表达式语言实现,可通过ExpressionUtil访问。

相关问题