【问题标题】:Custom tag not evaluating expressions; c and fmt tags are evaluating expressions自定义标签不评估表达式; c 和 fmt 标签正在评估表达式
【发布时间】:2010-09-24 16:23:46
【问题描述】:

我有一个以

开头的.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

【问题讨论】:

  • 发布您的 mytags.tld 文件和您的 .jsp。

标签: java jsp el


【解决方案1】:

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

【讨论】:

  • 这正是我想要的。谢谢。
猜你喜欢
  • 2016-05-04
  • 1970-01-01
  • 2016-07-26
  • 2022-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多