我在使用Primefaces
和Facelets
时遇到了一些问题。
问题在于:我有一个模板文件,这将成为我所有屏幕的基础。
<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>
使用此模板的文件:
<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>
在我的索引页面上,我收到<p:menuitem>
点击后,会显示用户insert some data, using the code above.
的对话框
对话框如下所示
<p:dialog widgetVar="dlg" modal="true">
<ui:include src="/cadastro/cadastroAluno.xhtml" />
</p:dialog>
使用ui:include,我的索引页面上插入了两个html标签,最糟糕的是,对话框没有出现!
如果我为h1标签更改<ui:include>
,则可以正常使用!
我怎样才能完成这项工作?
答案 0 :(得分:2)
对话框在面板和panelGrid中不起作用。它虽然在布局和layoutUnits内部工作。所以把你的对话框或确认对话框OUTSIDE面板或panelGrids。