Ho un tagfile personalizzato con un modulo:
Lo sto condizionando in modo condizionale con ajax come di seguito:
Questo è il bean di supporto associato:
import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class BackingTest { private boolean flag = false; public void printMessage() { System.out.println("hello"); } public void updateFlag() { flag = true; } public boolean getFlag() { return flag; } }
Quando faccio clic sul primo pulsante di comando, il metodo updateFlag()
viene richiamato correttamente e il secondo pulsante di comando viene visualizzato correttamente. Ma quando faccio clic sul secondo pulsante di comando, non viene mai printMessage()
metodo printMessage()
. Nella console JS del browser Web e nel monitoraggio del traffico HTTP posso vedere che l’evento click
è stato triggersto correttamente e che la richiesta XHR POST è stata inviata correttamente.
Se rimuovo l’attributo rendered
, allora tutto funziona come previsto.
Come è causato e come posso risolverlo? Sto usando Mojarra 2.1.25.