我想通过将属性传递给在backing bean中实现的方法来在jsf屏幕中显示文本.我必须将动态值作为属性传递.我尝试了以下但它似乎是一个不正确的语法 -
<h:outputText value="#{getValue(#{item.product}).component.address}" />
Run Code Online (Sandbox Code Playgroud)
Bal*_*usC 11
除了语法错误(你永远不能像EL那样嵌套EL表达式#{#{}})之外,以下内容在EL 2.2中有效,而后者又是Servlet 3.0/Java EE 6的一部分:
<h:outputText value="#{bean.getValue(item.product).component.address}" />
Run Code Online (Sandbox Code Playgroud)
因此,如果你有一个与Servlet 3.0兼容的Servlet 3.0兼容目标运行时(Tomcat 7,Glassfish 3,JBoss 6等)web.xml,那么你可以使用这样的参数调用非getter方法.
但是,根据您的问题历史记录,您使用的是JSF 1.2,而且您也可能将目标锁定在旧容器上,而上述容器无效.如果它是一个Servlet 2.5容器,那么你可以使用JBoss EL来使这个EL语法工作.
| 归档时间: |
|
| 查看次数: |
12084 次 |
| 最近记录: |