我有一个以
开头的 .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
答案 0 :(得分:1)
由于您使用的是Tomcat 4.1,因此您使用的是JSP 1.2。在2.0版本的JSP规范中引入了EL支持,因此您没有它。因此,JSTL 1.0使用自己的表达式语言实现,可通过ExpressionUtil
访问。