Comment lier dynamiquement une valeur de certains composants lors de l'exécution? Par exemple, j'ai la balise composant suivant,Liaison de valeur dynamique du composant JSF
<h:inputText value="#{bean.someProp}" />
Dans mon cas, « # {} bean.someProp » est connu que lors de l'exécution.
Quelle est la meilleure stratégie pour implémenter cela?
Dois-je traverser l'arborescence des composants et définir la liaison de valeur par programme? Si oui, à quelle phase du cycle de vie JSF dois-je faire la traversée?
Ok, je comprends ce que vous vouliez dire. C'est une bonne idée, sauf que je vais perdre toutes les métadonnées définies dans les annotations de mes entités. Cela signifie également perdre l'avantage d'utiliser (la balise de validation d'hibernation de SEAM) et toutes les autres infrastructures qui dépendent des métadonnées d'annotation. FYI, je fais ceci pour faire un cadre qui implémente le modèle 'objet nu' (l'implémentation d'une ref est http://www.nakedobjects.org/). Fondamentalement, il inspecte une entité et construit automatiquement des tableaux et des formulaires connexes (dans ce cas, l'arborescence des composants). –
bungrudi
Urm, ... sur la deuxième pensée, en utilisant cette approche, je ne dois pas perdre toutes ces méta-données d'annotations. Je vais essayer et vous le faire savoir. – bungrudi
C'est comme ça que je le fais actuellement. En faisant cela, je perds l'avantage de et je dois ré-implémenter la validation ailleurs. C'est trivial cependant, il suffit d'appeler hibernateValidator.validate (bean). –
bungrudi