Estou com problemas em confirmar o <P:dialog> ele esta sendo chamado normalmente, mas o botão de confirmação para adicionar a turma no evento que quero cadastrar não esta chamando o método eventoMB.adicionar();
Já testei o método chamando com um botão fora do<p:dialog> e funcionou perfeitamente, o problema então está no botão dentro do DIALOG.
Já troquei o <p:dialog> pelo <p:confirmDialog> e tmb o botão não chama o método eventoMB.adicionar();
Alguém consegue visualizar algum erro?
[code]<?xml version='1.0' encoding='UTF-8' ?>
CADASTRO DE EVENTO body {background-color: #c3d7c0; font-size: 12px} <p:layoutUnit position="west" size="220">
<ui:insert name="menu">
<h:form>
<p:panelMenu style="width:200px">
...
</p:layoutUnit>
<p:layoutUnit position="center">
<ui:insert name="centro">
<h:form id="tabelaTurmas">
<p:dataTable value="#{turmaMB.listaTurmas}" var="t" emptyMessage="Não há cadastro" paginator="true" rows="6" >
...
<p:column>
<p:commandButton id="botaoSelecao" update=":formDialog:display"
oncomplete="PF('turmaDialog').show()"
icon="ui-icon-search" title="View">
<f:setPropertyActionListener value="#{t}" target="#{eventoMB.turma}" />
</p:commandButton>
</p:column>
</p:dataTable>
<br/>
</h:form>
<h:form id="formularioEvento">
<p:panel id="formCadastroEven" header="Cadastrar novo Evento de Sugestões" >
<br/>
<p:messages for="formCadastroEven" closable="true"/>
<h:panelGrid columns="10" cellpadding="4" >
<h:form id="turmasEvento">
<p:dataTable value="#{eventoMB.turmas}" var="v" emptyMessage="Turmas Adicionadas">
<p:column>
<f:facet name="header">
<h:outputText value="Horário" />
</f:facet>
<h:outputText value="${v.horario}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="" />
</f:facet>
<h:outputText value="${v.disciplina.nome}"/>
</p:column>
</p:dataTable>
<blockquote/>
</h:form>
<h:inputHidden value="#{eventoMB.evento.id}"/>
<h:outputLabel value="Data Inicial:"/>
<p:calendar id="data" value="#{eventoMB.evento.dataInicial}" required="true" requiredMessage="Campo Obrigatório">
</p:calendar>
<h:outputLabel value="Data Final:"/>
<p:calendar id="campoDataFin" value="#{eventoMB.evento.dataFinal}" required="true" requiredMessage="Campo Obrigatório">
</p:calendar>
</h:panelGrid>
<p:commandButton ajax="false" value="Cadastrar" action="#{eventoMB.cadastro()}" image="ui-icon-disk" update=":formCadastroEven" />
<br/><br/>
</p:panel>
</h:form>
</ui:insert>
</p:layoutUnit>
</p:layout>
</div>
<p:growl id="growl" showDetail="true" life="3000" />
<p:dialog header="Detalhe" resizable="true" widgetVar="turmaDialog" id="turmaDlg" showEffect="fade" hideEffect="explode">
<h:form id="formDialog">
<h:panelGrid id="display" columns="2" cellpadding="4"
style="margin:0 auto;">
<h:outputText value="Turma:" />
<h:outputText value="#{eventoMB.turma.horario}"
style="font-weight:bold" />
<p:commandButton value="Sim" type="button" actionListener="#{eventoMB.adicionar()}" icon="ui-icon-check" update=":turmaEvento , :growl" onclick="PF('turmaDialog').show()" />
<p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
</h:panelGrid>
</h:form>
</p:dialog>
</h:body>
[/code]
[code]public EventoMB(){
…
public void adicionar() {
item.setTurma(getTurma());
eventoAtual(getTurma());
evento.addTurma(item);
itensEvento.add(item);
item = new ItemEvento();
}
}[/code]