基本JSF:是否可以在EL中设置属性值?

时间:2011-08-18 08:54:41

标签: jsf java-ee seam ajax4jsf

我需要做这样的事情:

<a4j:support even="onclick" action="#{myBean.myProperty = null}"/>

我想知道这是否可行,如果是这样,那将是正确的语法。

2 个答案:

答案 0 :(得分:2)

如果您正在运行支持EL 2.2的容器(Tomcat 7,Glassfish 3,JBoss AS 6等等,并且更新,web.xml声明符合至少Servlet 3.0),或者正在使用{{3} (你的seam标签暗示你 使用它...),那么你应该能够在EL中调用带参数的方法:

<a4j:support event="onclick" action="#{myBean.setMyProperty(null)}"/>

另一种方法是使用JBoss EL,这也在JSF 1.2中得到支持:

<a4j:support event="onclick" />
<f:setPropertyActionListener target="#{myBean.myProperty}" value="#{null}" />

答案 1 :(得分:1)

在表单提交时调用Bean setter方法,但基于您的示例,为什么不执行以下操作:

<a4j:support event="onclick" action="#{myBean.resetMyProperty}"/>

在你的bean中,你的resetMyProperty方法会将myProperty设置为null