1

我无法从我的 Bean 中打开 Dialog。我也试过actionListener而不是action

这就是我的 JSF 的样子:

<ui:composition template="../templates/site.xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:sec="http://www.springframework.org/security/tags">
<!-- remove me just for encoding check ä -->
<ui:define name="content">
    <h:form id="form">
        <h:panelGrid columns="1" cellpadding="5">

            <p:commandButton value="Button" type="button" id="myButton"
                action="#{testBean.showDialog}" />
        </h:panelGrid>
    </h:form>



    <p:dialog id="testDialog" widgetVar="testDialog2"
        header="My Test Dialog" modal="true" appendToBody="true">
        <h:form>

            <h:outputText value="Output" />

        </h:form>
    </p:dialog>


</ui:define>

这是我的豆子

@Component
@Scope("view")
public class TestBean {

    public void showDialog(){
        RequestContext.getCurrentInstance().execute("testDialog2.show()");
    }


}
4

1 回答 1

3

您的showDialog()方法根本没有被调用。删除type="button",因为你想使用 AJAX 启用提交,而不是按钮。

于 2013-02-05T12:46:06.553 回答