Question

La vraie question: Y at-il un moyen d'effacer certains attributs pour tous les composants sur une charge de première page

Infos générales:

Dans ma demande, j'ai une couche frontend JSF 2.0 qui parle à une couche de service (la couche de service est composé de grains de printemps qui s'injectaient aux haricots gérés).

La couche de service fait sa propre validation, et je fais la même validation dans la couche frontend en utilisant mes propres classes validateur pour essayer d'éviter la duplication de code en quelque sorte. Ces classes validateur ne sont pas JSF validateurs, ils sont juste POJO.

Je ne fait la validation d'une action, donc dans la méthode d'action, je valident, et seulement si elle est valide dois-je appeler à travers la couche de service.

Quand je fais ma validation, je mets le styleClass et le titre sur les UIComponents utilisant la réflexion (donc si le UIComponent a le setStyleClass (: String) ou SETTITLE (: méthodes de cordes), puis-je les utiliser)

.

Cela fonctionne bien, et sur une erreur de validation je vois une zone de texte joliment style avec une fenêtre contenant le message d'erreur si je passe la souris dessus. Cependant, étant donné que le composant est lié à une session Scoped Bean Managed, il semble que ces attributs bâton. Donc, si je navigue et de revenir à la même page, le styleClass et le titre sont encore à l'état d'erreur.

Y at-il un moyen d'effacer les styleClass et les attributs titre sur chaque chargement de page initiale?

Merci,

James

P.S. J'utilise la méthode d'action pour valider en raison de quelques problèmes que j'avais avant avec JSF 1.2 et il est des méthodes de validation, mais ne peut pas se rappeler pourquoi ... si c'est pourquoi j'utilise la méthode d'action pour valider.

Était-ce utile?

La solution

Ok, donc je dois utiliser un PhaseListener, voir cette entrée de blog par BalusC et cette autre entrée de blog , c'est une bien meilleure façon de faire ce que je fais déjà - la mise styleClass manuellement à l'aide de réflexion - qui obtient tous les composants avec les messages et les met en avant ... Je vais faire la même chose, pensez cependant il est possible d'ajouter un attribut à la place, ne l'ont pas encore essayé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top