Quando viene premuto il pulsante Save
, i dati dal actionsDialog devono essere convalidati. Se le informazioni richieste sono state inserite e valide, verrà visualizzata una seconda finestra di dialogo denominata reasonDialog.Come attivare args.validationFailed in PrimeFaces incompleto
La convalida non JSF dell'oggetto salvato viene eseguita con un metodo che restituisce un elenco di messaggi di errore. Se la convalida fallisce, i messaggi di errore vengono visualizzati con FacesMessage. Come devo fare in objectsBean.validate
per attivare la clausola if else da oncomplete
?
<p:dialog id="actionsDialog" widgetVar="actionsDialog" dynamic="true"
resizable="false" width="800" modal="true">
<ui:include src="/WEB-INF/flows/custom-flow/genericObject.xhtml"/>
<f:facet name="footer">
<p:commandButton value="Save" update="msgs"
oncomplete="if (args.validationFailed) {reasonDialog.hide()} else {reasonDialog.show()}"
actionListener="#{objectsBean.validate}"/>
<p:commandButton value="Cancel" immediate="true" oncomplete="actionsDialog.hide()" />
</f:facet>
</p:dialog>
O eseguo questa operazione o lancio un'eccezione, il ciclo di vita JSF continua, aggiorna i valori del modello e richiama l'applicazione. C'è un modo per fermare il rendering della pagina quando la validazione fallisce? – MounirReg
@Mounir: questo non è un comportamento normale. Basta fare una domanda come spiegato qui http://stackoverflow.com/tags/jsf/info in modo da poter osservare, eseguire il debug e inchiodare il problema nel caso in cui non si è all'altezza di tale compito. – BalusC