2016-01-17 2 views
1

Je me demande s'il existe un moyen d'appeler une méthode de bean géré avant la réponse du rendu. J'ai des composants qui dépendent d'une propriété de bean géré mais cette propriété doit être remplie avant la réponse de rendu. Normalement, j'ai utilisé la méthode @PostContruct pour initialiser mon bean et tout va bien. Cette fois, j'ai une situation rare où j'ai besoin du modèle pour transmettre une valeur au haricot avant que quoi que ce soit d'autre n'arrive. Je possède JSF 2.2.12 et Tomcat 7. J'ai essayé le f: viewAction mais cette balise ne déclenchera pas la méthode du bean. Ça ne marche pas du tout.Invoquer l'initialisation du bean géré dans le modèle

Voici ce que j'ai pour viewAction.

<f:metadata> 
    <f:viewAction action="#{cmsUtil.loadPageAssignments('50|27|1|21|2|52|53|23|24|25|28|29|30|31|32|33|17|26|18')}"/> 
</f:metadata> 

Y a-t-il une autre façon de faire ce que j'essaie de faire?

+0

J'ai réussi à faire fonctionner viewAction. Le problème était que la balise ne fonctionnait pas dans un fichier de modèle de base. Il semble vouloir travailler sur le fichier initial des facelets. Y at-il un moyen de le faire fonctionner sur un fichier de facelets de modèle? – user2677597

+0

Remarque: j'ai modifié la mauvaise condition. Vous avez décrit le temps de construction de la vue, pas le temps de rendu de la vue. Voir aussi http://stackoverflow.com/q/3342984 – BalusC

Répondre

0

On dirait que viewAction ne peut pas être dans les fichiers modèles. Ok, donc la configuration de la base de données est alors. Merci.