p:动态ui中的commandButton动作:include不起作用

时间:2015-11-08 11:51:03

标签: jsf jsf-2 primefaces javabeans

我是stackoverflow的新手,我希望你能帮助我。 我有一个xhtml页面,其中包含一个组合。在合成中有一个h:formp:commandbutton用于提交h:form. p:commandbutton有一个动作,应该触发bean方法,但事实并非如此。当我尝试将p:commandbutton放在合成之外时,在xhtml页面中,它可以正常工作。

一点点代码,所以你可以更好地解决我的问题:

index.xhtml中的部分,包括合成(这很好用):

    <p:panel id="centerContentPanel" style="margin:0px; padding:0px; border:0px;">
          <ui:include src="#{nCWPBean.centerPanelPage}.xhtml" />
    </p:panel>

作文:

<ui:composition 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://xmlns.jcp.org/jsf/html"
    xmlns:p="http://primefaces.org/ui">

    <h:form id="newUserForm">
        <table border="0">
            <thead>
                <tr>
                    <th><h:outputText value="creating a new User"/></th>
                    <th></th>
                </tr>
            </thead> 
            <tbody>
                <tr>
                    <td><h:outputText value="User Name"/></td>
                    <td><p:inputText id="username" value="#{DBconBean.uname}"/></td>
                </tr>
                <tr>
                    <td><h:outputText value="Password"/></td>
                    <td><p:inputText type="password" id="passwordFirst" value="#{DBconBean.pw}"/></td>
                </tr>
                <tr>
                    <td><h:outputText value="confirm Password"/></td>
                    <td><p:inputText type="password" id="passwordSecond" value="#{DBconBean.pw2}"/></td>
                </tr>
                <tr>
                    <td><h:outputText value="Admin"/></td>
                    <td><p:selectBooleanCheckbox value="#{DBconBean.rights}" id="adminCheck"/></td>
                </tr>
                <tr>
                    <td><p:commandButton type="submit"  value="Submit"  action="#{DBconBean.insertNewUser()}" icon="ui-icon-check"/></td>
                    <td><p:commandButton type="reset" value="Reset"/></td>
                </tr>
            </tbody>
        </table>

     </h:form>
</ui:composition>

当我将全部p:commandbuttonaction="#{DBconBean.insertNewUser()}"放在index.html中时,该方法运行。 这让我很困惑......

所以,这是我的问题:如何从合成中的按钮触发Bean Methode?或者我做错了什么?

哦,当我尝试输入运行onsubmitonclick的javascript函数时,它会起作用,直到该函数包含#{DBconBean.insertNewUser()};。在这种情况下,当时函数运行时会触发方法,而不是当函数运行时......

0 个答案:

没有答案