Bonjour,
Je souhaite créer un menu dont les éléments sont affichés en fonction des security-constraints du web.xml.
Le problème est que je n'arrive pas à trouver l'entrer à ces données.
Une idée ?
Merci d'avance
Piopium
Bonjour,
Je souhaite créer un menu dont les éléments sont affichés en fonction des security-constraints du web.xml.
Le problème est que je n'arrive pas à trouver l'entrer à ces données.
Une idée ?
Merci d'avance
Piopium
Tu peux retrouver lobjet user principal ou le role, à partir de l'objet request.
le faces-config ne contient pas ce genre d'informations,
Articles: Richfaces - JBosstools pour JSF.
Le faces-config non mais le web.xml oui.
Et j'ai l'impression qu'on ne peut pas accéder à ces données ce qui m'embête beaucoup. Car je n'ai pas envi d'avoir plusieurs fichiers à modifier si je dois faire de la mise à jour.
Articles: Richfaces - JBosstools pour JSF.
j'ai une série d'utilisateurs avec des rôles, tout cela est défini dans le fichier tomcat-users.xml.
Dans mon fichier web.xml j'ai déclaré des security-constraint pour empêcher l'accès certaines pages.
J'ai un menu (fait en richfaces) dont l'affichage doit dépendre des rôles, en gros je ne veux pas qu'apparaisse dans le menu des menuItem dont je sais pertinemment qu'ils retourneront une erreur d'accès si l'utilisateur.
Exemple, j'ai 2 rôles "role1" et "role2".
role1 à accès à tous et role2 est contraint.
Pour role1 le menu sera composé de "menu1", "menu2", et "menu3".
Alors que role2 ne verra que "menu1" "menu3".
Pour bloquer l'affichage je compte passer par l'attribut rendered des composant mais c'est la méthode derrière qui me bloquent car je n'ai pas envi de devoir réécrire l'équivalent de mes security-constraint ce qui m'obligerait à avoir une double gestion et donc une source d'erreurs potentiel.
tu peux vérifier le rôle à l'aide de la méthode isUserInRole de l'objet request:
Code : Sélectionner tout - Visualiser dans une fenêtre à part boolean isUserInRole(java.lang.String role) ;Il suffit de définir un booléen qui utilise cette méthode pour définir si le menu doit être visible.Returns a boolean indicating whether the authenticated user is included in the specified logical "role".
Si tu ne vois pas comment récupérer l'objet request dans un managedBean, regarde la faq.
Articles: Richfaces - JBosstools pour JSF.
Partager