Salut à tous, c'est mon premier question!!
Dans une fonction java, comment parcourir les éléments d'une page XHTML et mettre leurs Id dans une liste, pour les écrire dans un fichier ou les stocké dans une BD?
Salut à tous, c'est mon premier question!!
Dans une fonction java, comment parcourir les éléments d'une page XHTML et mettre leurs Id dans une liste, pour les écrire dans un fichier ou les stocké dans une BD?
Bonjour,
Je ne comprends pas trop l'intérêt d'une telle opération, mais il suffit de prendre le ViewRoot, puis de le parcourir en utilisant le getChildren()...
Code : Sélectionner tout - Visualiser dans une fenêtre à part UIComponent monComponent = (UIComponent) FacesContext.getCurrentInstance().getViewRoot();
Bonjour,
excelent romaintaz
j'ai utilisé votre idée pour écrire les deux fonction suivantes:
en concernant l'intérêt, je vais utiliser les id de composant pour gérer les droits de l'utilisateur, car je considère une action (insertion, consultation,modification, ...) est un ensemble des privilèges ( visible, enabe,..) sur les boutons çàd les composants.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 public void parcoursElements(){ FacesContext ctx = FacesContext.getCurrentInstance(); Application app = ctx.getApplication(); UIComponent root = (UIComponent) FacesContext.getCurrentInstance().getViewRoot(); parcoursSousElements(root); } public void parcoursSousElements(UIComponent root){ List<UIComponent> listComposants= root.getChildren(); System.out.println("Comopsant:"+root.getId()); System.out.println("Nb des sous éléments:"+listComposants.size()); for (int i = 0; i < listComposants.size() ; i++) parcoursSousElements(listComposants.get(i)); // traitement spésifique de l'élément en cours (root) //enreg }
Mouais, je ne suis toujours pas convaincu par ton explication
Personnellement, je ferais plutôt quelque chose comme ça :
Le principe : un bean (userControlBean) dispose d'une méthode (isHasSuppressionDroit) qui te retourne vrai si l'utilisateur a les droits de suppression, faux sinon. Dans ce dernier cas, le bouton n'est alors pas affiché (tu peux remplacer rendered par disabled si tu préfères que le bouton soit affiché mais grisé si l'utilisateur n'a pas les droits)
Code : Sélectionner tout - Visualiser dans une fenêtre à part <h:commandButton value="supprimer" ... rendered="#{userControlBean.hasSuppressionDroit}"/>
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager