Olá galera tenho uma dataTable e dentro de uma coluna tenho um metodo de exclusão que exclui os registros, mais quando eu passo esse método para um confirmdialog ele não funciona não exclui o regisro, e da um nullpointerexception, com resolvo esse problema ex do codigo:
<h:form>
<p:dataTable>
<p:column>
<f:facet name=“header”>
<h:outputText value=“Excluir” />
</f:facet>
<p:commandButton value=“Excluir” oncomplete=“popupExcluir.show();” />
</p:column>
</p:dataTable>
</h:form>
<p:dialog id=“modalDialogExcluir” closable=“false” message=“Deseja realmente excluir o registro?” header=“Excluir registro.” severity=“alert” widgetVar=“popupExcluir” appendToBody=“true”>
<p:commandButton type=“submit” id=“confirm” value=“Sim” oncomplete=“popupExcluir.hide()” action="#{clienteController.excluir()}" styleClass=“btn” />
</p:dialog>
Obrigado.
o botao que chama esse dialog precisa fazer um update no id do form que está dentro do seu dialog
Olá, coloquei a dialog dentro da coluna de exclusão da datatable ao clicar no botão não da mais o erro nullpointerexception, mais o método de exclusão não é chamado.
o que poderia ser?
ex:
<p:column>
<f:facet name=“header”>
<h:outputText value=“Excluir” />
</f:facet>
<p:commandButton id=“modalDialogButton” value=“Modal” onclick=“popupExcluir.show();” type=“button” update=“cadProduto”/>
<p:dialog id="modalDialogExcluir" closable="false" message="Deseja realmente excluir o registro?" header="Excluir registro." severity="alert" widgetVar="popupExcluir" appendToBody="true">
<p:commandButton type="submit" id="confirm" value="Sim" oncomplete="popupExcluir.hide()" action="#{clienteController.excluir()}" styleClass="btn" />
</p:dialog>
</p:column>
</p:dataTable>
</h:form>
prjava
Dezembro 16, 2013, 11:41am
#4
Coloque ajax = false, no comandbutton.
Já tentei com ajax = false, mais não da certo o botão dentro da dialog não acessa o método excluir do bean, quando eu tento debugar não acontece nada!
Fiz uma alteração colocando o dialog dentro da coluna de exclusão do datatable e ao clicar no botão excluir,
ele chama a dialog mais se eu colocar o cod de barras do produto na dilog ele só mostra o ultimo da tabela e o botão de confirmação “sim”, não executa o metodo de exclusão,
o que poderia ser?
ex:
<p:column>
<f:facet name=“header”>
<h:outputText value=“Excluir” />
</f:facet>
<p:commandButton value=“Excluir” oncomplete=“remover.show()” update=“formRemover”/>
<p:dialog widgetVar="remover" header="Remover Categoria" width="400" modal="true" appendTo="@(body)">
<h:form prependId="false" id="formRemover">
<h:outputText value="Confirma a remoção: #{pro.codigoBarra} ?" />
<h:panelGrid columns="2">
<p:commandButton value="Sim" actionListener="#{produtoController.excluir}" update=":cadProduto:dataTable" oncomplete="remover.hide()" />
<p:commandButton value="Não" onclick="remover.hide()" />
</h:panelGrid>
</h:form>
</p:dialog>
</p:column>
prjava
Dezembro 19, 2013, 11:35am
#7
Poste seu xtml, bean e dao, completos, fica mais fácil pra gente te ajudar!