我想在我的commandLink中嵌套多个setPropertyActionListener
,但只有一个有效。你是怎么做到的?此命令链接设置属性,然后打开一个对话框,以便它基本上初始化对话框。
这是如何完成的?
<p:commandLink update=":dreamWebSearchFrm" value="#{bundle['dreamModify.search.link.TEXT']}" oncomplete="webSearchDlg.show()">
<f:setPropertyActionListener value="false" target="#{dreamSearchBean.shouldRender}"/>
<f:setPropertyActionListener value="true" target="#{dreamSearchBean.shouldRender1}"/>
</p:commandLink>
答案 0 :(得分:7)
您可以使用EL参数并在bean上调用单个方法。从该方法,更新您想要的任何内容。
e.g。
#{dreamSearchBean.shouldRenderInit(false, true)}
在你的bean中:
public void shouldRenderInit(boolean one, boolean two) {
setShouldRender(one);
setShouldRender1(two);
}
答案 1 :(得分:0)
我尝试
<p:commandLink update=":dreamWebSearchFrm" value="#{bundle['dreamModify.search.link.TEXT']}" oncomplete="webSearchDlg.show()">
<f:setPropertyActionListener value="#{false}" target="#{dreamSearchBean.shouldRender}"/>
<f:setPropertyActionListener value="#{true}" target="#{dreamSearchBean.shouldRender1}"/>
</p:commandLink>
使用JSF 1.2和richfaces是正确的。
答案 2 :(得分:-1)
我使用以下命令设置属性值
<f:setPropertyActionListener
target="#{facRwMappingListBean.facRwMapping.finalActionCdDesc}"
value="#{gridData.finalActionCdDesc}" />
我的工作正常。您的代码看起来正确,除了value =“true”部分。尝试以下列方式传递布尔值。
value=#{"true"}