Resetta i campi di input senza eseguire la convalida

Ho una vista di Facelets come sotto:

 

Quando si fa clic sul pulsante di ripristino, il metodo corrispondente non può mai essere eseguito a causa della convalida. Non riesco a utilizzare immediate="true" sul mio pulsante di ripristino perché crea altri problemi.

elabora infatti per impostazione predefinita l’intero modulo ( process="@form" ), è ansible modificarlo specificando solo il componente corrente nell’attributo del process .

  

Tuttavia, ciò non riuscirà se il modulo è già stato precedentemente convalidato. I campi di input che sono stati contrassegnati come non validi non verranno aggiornati con il nuovo valore del modello (che hai reimpostato tu stesso). Se utilizzi PrimeFaces 3.4, incorpora nel pulsante:

    

Se non si è ancora su PrimeFaces 3.4 e non è ansible aggiornarlo, è ansible utilizzare OmniFaces ResetInputAjaxActionListener per questo.

Un’alternativa completamente diversa è semplicemente aggiornare la pagina corrente con una nuova richiesta GET.

  

Questo ha funzionato per me in PrimeFaces 5.3

  

Probabilmente è ansible sostituire il target "@form" dell’attributo update con un componente specifico, se lo si desidera.