-
JSF facelet composants
Bonsoir,
je viens de lire la faq facelets sur la création de composants et j'ai créer un composant pour faire un test, ça marche nickel. Quand je passe un paramètre pour le composant comme étant une chaine de caractère nickel aussi. Le problème est quand j'essai d'invoquer une méthode dans un bean il la voie comme une property et pas comme une méthode. J'ai l'exception suivante qui est levé.
Property 'deletePerson' not found on type Beans.PersonBean
Ce que je trouve logique puisque c'est une méthode et pas un attribut avec get et set.
voici le bout de code que j'ai utiliser pour l'appel.
<fc:suppmenu id="spperson" entityname="Cette Personne" deletemethod="#{PersonBean.deletePerson}"/>
De l'aide sera la bienvenue et merci d'avance.
-
Je viens de résoudre le problème!
En faite quand on créer des composantes avec facelets, on peut pas passer comme paramètre pour un composant une méthode(une action pour un bouton par exemple) en utilisant le EL de la manière traditionnelle.
Il existe cepandant un moyen qui peut régler le problème.
Le code que je soumet est extrait de la source suivante:
http://www.ibm.com/developerworks/ja...celets/#N10298
En assumant que dans le composant on a un bouton, on doit le définir de la manière suivante:
<h:commandLink id="#{action}" value="#{label}"
action="#{backingBean[action]}"/>
Il faut faire l'appel comme suit:
<a:columnCommand label="Edit" action="editCD"
backingBean="${CDManagerBean}"/>
Ps:
Si un modo passe par ici, je pense qu'il serait interessant d'inclure cela dans la fac.