È ansible mantenere in vita una richiesta di scope scope attraverso i postback sulla stessa pagina?
Il problema generale è che, dato che il bean viene scaricato alla fine della richiesta e ricreato su ogni form submit, ad esempio i booleani dietro disabled
dynamicmente disabled
, readonly
e rendered
vengono ripristinati ai loro valori predefiniti e fanno sì che i moduli non funzionino più come intenzionati.
Suppongo che l’ambito della sessione non sia un’opzione, altrimenti questa domanda ha poco senso.
Puoi farlo usando Tomahawk
. Aggiungi la seguente riga da qualche parte alla pagina:
RichFaces
fa anche lo stesso:
O se c’è spazio, aggiornare almeno a JSF 2.x e mettere il bean in vista scope:
@ManagedBean @ViewScoped public class Bean implements Serializable { // ... }
Indipendentemente dal modo in cui, lo stesso bean sarà presente quando si effettua il postback alla stessa vista e si continua a restituire il valore null
o void
dai metodi di azione.
Non proprio, a meno che non memorizzi il bean da qualche parte, ad esempio una mappa nello scope dell’applicazione, per recuperarlo in seguito.
Perché non farlo solo in ambito Session? Questo è lo scopo dell’ambito Session, quindi più Richieste durante la stessa Sessione possono raggiungere lo stesso stato.