ユーザーを排除する必要があるcomandButton
を呼び出す がconfirmDialog
ありますが、actionListener にあるメソッドを呼び出すことはありません。
これはコードです:
<p:dialog id="dialogEditar" widgetVar="dialogEditar" header="#{bundle_usuarios.usuarios_titulo_edicion}" resizable="false">
<p:panelGrid id="panelEditar"
<p:row>
<p:column>
<p:commandButton id="btModificar" type="submit" actionListener="#{usuariosMB.modificarUsuario()}"
value="#{bundle_general.general_modificar}" update="formEditar" rendered="#{usuariosMB.permisoCtMenu}"/>
</p:column>
<p:column colspan="7">
<p:commandButton id="btEliminar" type="button" onclick="confirmation.show()"
value="#{bundle_general.general_eliminar}"/>
</p:column>
</p:row>
</p:panelGrid>
<p:confirmDialog appendToBody="true" id="confirmDialog" message="#{bundle_usuarios.usuarios_confirma}"
header="#{bundle_usuarios.usuarios_titulo_confirma_eliminar}" severity="alert" widgetVar="confirmation">
<p:commandButton id="confirm" type="submit" value="#{bundle_usuarios.usuarios_aceptar_eliminar}"
update="dialogEditar, formEditar" oncomplete="confirmation.hide()"
actionListener="#{usuariosMB.eliminarUsuario()}" rendered="#{usuariosMB.permisoCtMenu}" />
<p:commandButton id="decline" value="#{bundle_usuarios.general_cancelar}" onclick="confirmation.hide()" type="button" />
</p:confirmDialog>
</p:dialog>
confirmDialogなしで同じコードを入力すると、問題なく実行され、ユーザーが削除されます。
正常に実行されるコードは次のとおりです。
<p:dialog id="dialogEditar" widgetVar="dialogEditar" header="#{bundle_usuarios.usuarios_titulo_edicion}" resizable="false">
<p:panelGrid id="panelEditar"
<p:row>
<p:column>
<p:commandButton id="btModificar" type="submit" actionListener="#{usuariosMB.modificarUsuario()}"
value="#{bundle_general.general_modificar}" update="formEditar" rendered="#{usuariosMB.permisoCtMenu}"/>
</p:column>
<p:column colspan="7">
<p:commandButton id="btEliminar" type="submit" actionListener="#{usuariosMB.eliminarUsuario()}" value="#{bundle_general.general_eliminar}" update="dialogEditar, formEditar" rendered="#{usuariosMB.permisoCtMenu}"/>
</p:column>
</p:row>
</p:panelGrid>
</p:dialog>
もう 1 つのことは、id="confirm" で commandButon をクリックすると、confirmDialog が消えることはなく、ウィンドウ内でブロックされたままになります。
詳細が必要な場合は、どちらが必要か教えてください。何か提案はありますか?ありがとう!