JSF - 带参数的调用方法(tomcat6)

时间:2011-10-27 08:32:59

标签: java jsf tomcat

我正在尝试在tomcat6上运行我的项目(通常在tomcat7上运行)。但JSF现在无法调用带参数的方法,例如

<h:commandLink action="#{bean.setpage('index')}"/>

它在Tomcat7上正常工作..

是否可以在tomcat6上调用带参数的方法?

更新:以下两个答案都是正确的,我还必须更新 context.xml

<context-param>
    <param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
<context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>

2 个答案:

答案 0 :(得分:2)

如果您正在使用完全支持JSF 2.0的容器,则可以直接执行

<h:commandLink action="#{bean.setpage('index')}"/>

否则,您必须使用f:paramf:attribute。我认为Tomcat 7完全支持jsf 2,但Tomcat 6不支持开箱即用。因此,您必须添加jstl-api-1.2.jarjstl-impl-1.2.jarel-impl-2.2.jar库才能使其在Tomcat 6上运行。

答案 1 :(得分:1)

是的,只是检查你是否拥有tomcat的lib文件夹中的el和el-impl jar的权利。 (2.2我认为)