我在用:
Implementation
我导入了标签库
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>当我打电话:
<h:outputText value="#{fn:indexOf('ciao','i')}"></h:outputText>输出为1
当我用
<t:outputText value="#{fn:indexOf('ciao','i')}"></t:outputText>它引发服务器异常,就像引用正确的库存在一些问题一样。
javax.el.ELException: Function 'fn:indexOf' not found
at org.apache.el.lang.ExpressionBuilder.visit(ExpressionBuilder.java:171)
at org.apache.el.parser.SimpleNode.accept(SimpleNode.java:145)
at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:133)
at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:147)有什么暗示吗?(谢谢大家的帮助:)
发布于 2010-01-22 12:18:44
我能够在Tomcat6.0.18上用Mojarra 1.2_14和Tomahawk 1.1.9精确地再现这个问题。Tomcat6.0.20也出现了同样的问题,尽管堆栈跟踪中的org.apache.el.*方法的行号略有不同。
为了排除Tomcat的jsp-el被怀疑,我在Glassfish v3进行了测试,它使用的是不同的EL impl。它产生了基本相同的异常,尽管堆栈跟踪中有不同的EL类(com.sun.el.*而不是org.apache.el.*)。
然而,有趣的事实是,正如Bozho所评论的那样,当使用Facelets而不是JSP时,它确实工作得完美无缺。这意味着Tomcat和Glassfish的JSP实现都被破坏了。
我会在这里为Tomcat 6 http://tomcat.apache.org/bugreport.html提交一个问题,看看Apache对此有何看法。
https://stackoverflow.com/questions/2093379
复制相似问题