我看到了几个问题,询问如何将参数传递给JSF方法。在EL2.2和servlet 3.0中,它使用户能够将参数传递到方法调用中。一个例子:How to pass an argument to method from rendered h:outputText?问题是:在JSF2.x中,每个标记属性都应该采用ValueExpression或MethodExpression。在链接的示例中,“ValueExpression”应该只接受渲染。然而,我确实看到,如果我们放入()来明确它是一个方法调用,而不是一个属性,那么它仍然适用于MethodExpression。这是不是JSF2.x规范搞砸了,还是我错过了什么?
发布于 2012-04-18 10:31:23
在值表达式中使用新的EL 2.2带参数调用方法语法并不会自动使其成为方法表达式或其他什么。它仍然是一个值表达式。值表达式使用给定EL表达式的返回值作为值。方法表达式在与组件相关联的动作事件上调用给定的EL表达式。
EL表达式本身是调用属性getter方法,还是调用带参数的任意方法,这与整体如何处理EL表达式并不重要。
https://stackoverflow.com/questions/10201522
复制相似问题