从JSF托管bean隐藏/显示ace:对话框

时间:2015-03-06 13:48:47

标签: jsf dialog icefaces managed-bean

我很难尝试从支持bean类显示<ace:dialog>对话框。我试图通过以下代码访问对话框组件:

context.getViewRoot().findComponent("allianceMemberForm:addAlliance:addAllianceForm:selectStartDate");

但是,我不知道如何在bean方法中隐藏或显示此对话框。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

经过一些实验,我设法提出了两个解决方案。

1.在我的托管bean中设置一个布尔值,并将此属性附加到ace:dialog组件的visible属性。然后我可以使用属性动作侦听器来切换这个布尔值。

2.使用javascript上下文:

JavaScriptRunner.runScript(FacesContext.getCurrentInstance(), "ice.ace.instance('allianceMemberForm:addAlliance').show()");