Bonjour, je suis actuellement entrain de développer une application JSF + facelets. (Et..et...je débute en JSF).
Dans cette application il y a une page d'authentification etj'aimerais que l'on arrive sur cette dernière si on est pas un utilisateur enregistré.
Je me suis dit (peut être naïvement) qu'en mettant dans le template.xhtml
une balise "choose" que je pourrais, en fonction de l'existence de l'utilisateur dans la session, et ce quelques soit la page qui invoque ce template bien précis, faire ma redirection vers ma "view-id" login de mon fichier faces-config.xml.
Un bout de code vaut mieux qu'un long discours:
Un deuxieme bout de code vaut mieux qu'un deuxieme long discours
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
22 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:t="http://myfaces.apache.org/tomahawk" xmlns:f="http://java.sun.com/jsf/core" xmlns:c="http://java.sun.com/jstl/core"> (...) <c:choose> <c:when test="${sessionScope.user== null}"> //ici j'aimerais rediriger vers l'action login </c:when> <c:otherwise> (...) <ui:insert:"content"/> (...) </c:otherwise> <c:choose> (...):
Nikel, la condition fonctionne et empêche le template de charger le reste et donc d'inclure les vues!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 (...) <navigation-rule> <from-view-id>*</from-view-id> <navigation-case> <from-outcome>login</from-outcome> <to-view-id>/login.xhtml</to-view-id> </navigation-case> </navigation-rule> (...)
Le soucis: comment faire une telle redirection?
Quelqu'un à une idée (ou peut-être une solution plus élégante) ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 (...) <c:when test="${sessionScope.user== null}"> //ici j'aimerais rediriger vers l'action login </c:when> (...)
(merci d'avance)
Partager