Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 Primefaces p:对话框未显示_Jsf 2_Primefaces - Fatal编程技术网

Jsf 2 Primefaces p:对话框未显示

Jsf 2 Primefaces p:对话框未显示,jsf-2,primefaces,Jsf 2,Primefaces,我正在尝试在p:dialog元素中显示p:fileUpload-element。 如果没有p:fileUpload-Element,将显示p:dialog。然后我添加fileUpload标签 它什么也不做。我使用的是Tomcat 7、mojorra 2.1.28和primefaces 5.0 <ui:composition xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"

我正在尝试在p:dialog元素中显示p:fileUpload-element。 如果没有p:fileUpload-Element,将显示p:dialog。然后我添加fileUpload标签 它什么也不做。我使用的是Tomcat 7、mojorra 2.1.28和primefaces 5.0

<ui:composition 
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
template="WEB-INF/templates/template.xhtml"
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
xmlns:p="http://primefaces.org/ui">

<!--Zusätzliches Stylesheet-->
<ui:define name="additionalCSS"> <link rel="stylesheet" type="text/css" href="resources/style/benutzer.css" /> </ui:define>
<!--Titel-->
<ui:define name="title">Ticket schreiben</ui:define>

<!--Hier beginnt der Content-Bereich, der je nach Client variiert-->
<ui:define name="content"> 

    <div id="content">
        <div id="verlauf">
            <h:form>
                <h:commandLink value="Home" action="#{linkController.goHome}">  </h:commandLink> / 
                <h:commandLink value="Tickets" action="#{linkController.goTicketindex}"></h:commandLink> / 
                <h:commandLink value="Neues Ticket erstellen" action="#{linkController.goTicketcreate}"></h:commandLink> 
            </h:form>
        </div>

        <div id="headline">Neues Ticket erstellen</div>
        <h:form>
            <div id="stats">
                <div id="title">Empfänger</div>

                <div class="inputName">An:</div>
                <div class="inputContent"> <h:inputText id="user" styleClass="inputText" value="#{ticketController.adress}" >
                    <!--    validatorMessage="Bitte geben Sie den Empfänger an." >
                        <f:validateRequired/>-->
                    </h:inputText> </div>
                <div class="inputName">Betreff:</div>
                <div class="inputContent"> <h:inputText id="topic" styleClass="inputText" value="#{ticketController.topic}" 
                                                        ></h:inputText> </div>
            </div>

            <div id="rechte">

                <div id="title">Nachricht</div>


                <div class="column">
                    <div class="inputArea"> <h:inputTextarea id="message" styleClass="inputField" value="#{ticketController.message}" >
                      <!--      validatorMessage="Bitte geben Sie eine Nachricht ein." >
                            <f:validateRequired/>-->
                        </h:inputTextarea> </div>
                </div>
                <br/>
                <p:dialog widgetVar="dialogVar" modal="true" minHeight="100" draggable="true" >
                    <p:fileUpload fileLimit="20000" fileLimitMessage="File ist zu groß"  fileUploadListener="#{ticketController.fileUploadHandler}"></p:fileUpload>
                </p:dialog>
                <h:commandButton value="Datei Uploaden" type="button" styleClass="submitButton" onclick="dialogVar.show()"></h:commandButton>
                <h:commandButton value="Anlegen" type="submit" styleClass ="submitButton" 
                                 action="#{ticketController.createNewTicket}"></h:commandButton>

            </div>

        </h:form>
    </div>

</ui:define>

</ui:composition>

我尝试了PF'dialogVar.show和dialogVar.show,但没有显示出来。

我认为您必须在对话框中添加。生成代码后,不管您在xhtml页面中看到什么,该对话框都将位于表单之外,因此您需要自己添加它。 请尝试以下代码:

<ui:define name="content"> 
     <div id="content">
          <div id="verlauf">
              <h:form>
                 <h:commandLink value="Home" action="#{linkController.goHome}"/> 
                 <h:commandLink value="Tickets" action="#{linkController.goTicketindex}"/>
                 <h:commandLink value="Neues Ticket erstellen" action="#{linkController.goTicketcreate}"/>
              </h:form>
          </div>
          <div id="headline">Neues Ticket erstellen</div>
          <h:form>
            <div id="stats">
            <div id="title">Empfänger</div>

            <div class="inputName">An:</div>
            <div class="inputContent"> 
                <h:inputText id="user" styleClass="inputText" value="#{ticketController.adress}" />
            </div>
            <div class="inputName">Betreff:</div>
            <div class="inputContent"> 
                 <h:inputText id="topic" styleClass="inputText" value="#{ticketController.topic}" 
                                                    ></h:inputText> </div>
        </div>

        <div id="rechte">

            <div id="title">Nachricht</div>


            <div class="column">
                <div class="inputArea"> <h:inputTextarea id="message" styleClass="inputField" value="#{ticketController.message}" >
                  <!--      validatorMessage="Bitte geben Sie eine Nachricht ein." >
                        <f:validateRequired/>-->
                    </h:inputTextarea> </div>
            </div>
            <br/>
            <h:commandButton value="Datei Uploaden" type="button" styleClass="submitButton" onclick="dialogVar.show()"></h:commandButton>
            <h:commandButton value="Anlegen" type="submit" styleClass ="submitButton" 
                             action="#{ticketController.createNewTicket}"></h:commandButton>

        </div>

    </h:form>
    <p:dialog widgetVar="dialogVar" modal="true" minHeight="100" draggable="true" >
        <h:form>
           <p:fileUpload fileLimit="20000" appendToBody="false" fileLimitMessage="File ist zu groß"  fileUploadListener="#{ticketController.fileUploadHandler}"/>
        </h:form>
     </p:dialog>
</div>

你的问题中有很多不相关的代码。尝试删除它,看看它是否与它的最低版本的工作。如果仍然没有,请在此处发布。看规则。