当前位置 : 主页 > 编程语言 > java >

jsp – 表达式语言中的调用方法

来源:互联网 收集:自由互联 发布时间:2021-06-25
如何使用EL( Expression Language )在JSP中调用方法? 例如: c:forEach var="item" items="${listStr}" begin="0" end="2" step="2" p${item.indexOf("h")}/p/c:forEach 这里,item是java.lang.String类型的对象.这会在Tomcat上运行
如何使用EL( Expression Language)在JSP中调用方法?

例如:

<c:forEach var="item" items="${listStr}" begin="0" end="2" step="2">
    <p>${item.indexOf("h")}</p>
</c:forEach>

这里,item是java.lang.String类型的对象.这会在Tomcat上运行时导致错误.

这仅在EL 2.2之后得到支持.这与Servlet 3.0相辅相成.因此,如果您确保使用与Servlet 3.0兼容的web.xml声明来定位Servlet 3.0兼容容器(Tomcat 7,Glassfish 3等),那么它将按照您的预期方式工作.但是,如果您的目标是较旧的版本化servlet容器,或者具有较旧的版本化甚至是错误的web.xml根声明,那么它将无法工作.

也可以看看:

> Our EL wiki page

更新:您的特定问题可能是由Tomcat 7中的错误引起的.它找不到基于给定参数的正确重载方法.您的表达式在Glassfish 3中运行良好.所有非重载方法在Tomcat中都可以正常工作.

网友评论