문제

I'm facing a little problem with Primefaces and Facelets.

Here's the problem: I got a template file, that will be my base for all my screens.

            <p:commandButton value="#{msg.salvar}" action="#{managed.salvar}"
                update="cadastroMessages, #{formId}" type="image"
                image="../imagens/user_business_add_32.png" />

            <p:commandButton value="#{msg.excluir}" action="#{managed.excluir}"
                type="image" image="../imagens/user_business_close_32.png"
                update="cadastroMessages, #{formId}" />

            <p:commandButton value="#{msg.procurar}"
                onclick="#{modalConsulta}.show();" type="button" ajax="false" />

        </h:panelGrid>

        <ui:insert name="conteudo" />
    </h:form>
</p:panel>

The file that uses this template:

        <ui:param name="managed" value="#{managedAluno}" />
    <ui:param name="modalConsulta" value="modalConsultaAluno" />
    <ui:param name="formId" value="cadastroAlunoForm" />
    <ui:param name="header" value="#{msg.cadastroAlunos}" />

    <ui:define name="conteudo">
        <h:panelGrid columns="2">
            <h:outputText value="#{msg.nome}" />
            <h:inputText id="nome" value="#{managedAluno.aluno.nome}" required="true" />

            <h:outputText value="#{msg.datanascimento}" />
            <p:calendar id="calendario" value="#{managedAluno.aluno.dataNascimento}" />

            <h:outputText value="#{msg.responsavel}" />
            <h:inputText id="resp" value="#{managedAluno.aluno.responsavel}" />

        </h:panelGrid>
    </ui:define>

On my index page, I got a <p:menuitem> that when clicked, will show a dialog for user insert some data, using the code above.

The dialog looks like this

<p:dialog widgetVar="dlg" modal="true"> <ui:include src="/cadastro/cadastroAluno.xhtml" /> </p:dialog>

Using ui:include, two html tags are inserted on my index page, and the worst, the dialog DOESN'T show up!

If i change <ui:include> for an h1 tag, works fine!
How can i get this work?

도움이 되었습니까?

해결책

dialog boxes do not work inside panels nor panelGrid. It works inside layout and layoutUnits though. So put your dialog or confirmDialogs OUTSIDE panels or panelGrids.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top