Est-il possible de faire appel à une méthode avec paramètres dans l'attribut rendered d'un composant??
exemple: rendered ="#{bean.méthode(param,param)}"
Merci.
Version imprimable
Est-il possible de faire appel à une méthode avec paramètres dans l'attribut rendered d'un composant??
exemple: rendered ="#{bean.méthode(param,param)}"
Merci.
Non rendered une valeur d'un paramètre, c'est une value binding et pas methode binding,
et même avec methode binding on ne peux pas passer un paramètre, pour le moment..
Px tu expliquer le contexte de ton pb? ca peut aider à te trouver une solution de contournement.
tu ne peux pas appeler de méthode avec des paramètre dans une EL. Par contre, tu peux créer, si ca peut te servir, une série de méthodes statiques prenant des paramètres et les enregistrer dans une taglib. Avec facelets c'est relativement facile à réaliser.
Ca m'interesse enormement ta reponse, t'as un exemple ou un tuto qui parle de ca?Code:tu peux créer, si ca peut te servir, une série de méthodes statiques prenant des paramètres et les enregistrer dans une taglib
t'en trouvera plein sur le net. Un example tiré d'un code réel ici:
Code:
1
2
3
4
5
6
7
8
9 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:custom="http://www.my/Facelets/custom"> ...... <h:form acceptcharset="UTF-8" id="transportationForm" rendered="#{custom:hasRole('acc')}"
Code:
1
2
3
4
5
6 public class ElFunctions { public static Boolean hasRole(String role){ //code specifique renvoyan un boolean ;) } }
Code:
1
2
3
4
5
6
7
8
9
10 <facelet-taglib> <namespace>http://www.my/Facelets/custom</namespace> <function> <function-name>hasRole</function-name> <function-class>com.company.ElFunctions</function-class> <function-signature> java.lang.Boolean hasRole(java.lang.String) </function-signature> </function> ....