Domanda

La vera domanda:? Esiste un modo per cancellare alcuni attributi per tutti i componenti su un caricamento iniziale della pagina

informazioni di base:

Nella mia applicazione, ho un livello di 2.0 frontend JSF che parla ad un livello di servizio (il livello di servizio è costituito da bean Spring che vengono iniettati ai fagioli gestiti).

Il livello di servizio fa la propria convalida, e io faccio lo stesso convalida nello strato frontend usando le mie classi validatore per cercare di evitare la duplicazione del codice in qualche modo. Queste classi validator non sono validatori JSF, sono solo POJO.

Lo faccio solo la validazione su un'azione, così nel metodo di azione, ho eseguire la convalida, e solo se è valida chiamo fino al livello di servizio.

Quando faccio il mio convalida, ho impostato lo styleClass e il titolo sui Chimp utilizzando la riflessione (quindi se l'UIComponent ha il setStyleClass (: String) o setTitle (: metodi String), quindi ho usarli)

.

Questo funziona bene, e su un errore di convalida vedo una casella di testo ben abbinati a un popup contenente il messaggio di errore se mi passa il mouse su di esso. Tuttavia, dal momento che la componente è associato a una sessione Scoped bean gestito, sembra che questi attributi bastone. Quindi, se a navigare via e tornare alla stessa pagina, lo styleClass e il titolo sono ancora in stato di errore.

C'è un modo per cancellare lo styleClass e il titolo attributi ad ogni caricamento della pagina iniziale?

Grazie,

James

P.S. Sto utilizzando il metodo di azione per convalidare causa di alcuni problemi che avevo prima con JSF 1.2 ed è metodi di convalida, ma non riesco a ricordare perché ... ecco perché sto usando il metodo di azione per la convalida.

È stato utile?

Soluzione

Ok, quindi devo usare un PhaseListener, vedi questo blog da BalusC e quest'altro blog , questo è un modo molto migliore di fare quello che sto facendo già - l'impostazione del styleClass manualmente utilizzando la riflessione - che ottiene tutti i componenti con i messaggi e li mette in evidenza ... sto andando fare lo stesso, ma pensare che sia possibile per aggiungere un attributo, invece, non hanno ancora provato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top