IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

Session expirée et redirection


Sujet :

Struts 1 Java

  1. #1
    Membre averti Avatar de Shivaneth
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 349
    Points : 341
    Points
    341
    Par défaut Session expirée et redirection
    Bonjour,

    j'ai une application web dans laquelle j'ai une page de login. Lors de l'action effectuée à la vérification du nom d'utilisateur et du mot de passe, je crée des variables de session via la commande :
    Je souhaiterai, lorsque ma session est expirée ou que l'utilisateur ne s'est pas logué, le rediriger vers la page d'identification. Actuellement j'ai réussi à m'afficher un message à l'écran lorsque la session est expirée ou qu'il n'y a pas eu d'authentification mais je n'arrive pas à faire le renvoi vers la page d'accueil.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <%if((request.getSession()).getAttribute("id_util")==null)
    {
    %>Session expirée ou pas d'identification !!!<%
    }%>
    J'ai essayé avec logic:redirect mais cela ne fonctionne pas. Une idée ?

    Merci
    Shiv@

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 372
    Points : 239
    Points
    239
    Par défaut
    dans la jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <logic:notPresent scope="session" name="LOGIN">
        <logic:forward name="sessionexpiree"/>
    </logic:notPresent>
    Sachant que LOGIN est une variable que tu mets en session au log de ton utilisateur.
    et dans le struts config :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <global-forwards>
        <forward name="welcome" path="/synoptic.do"/>
        <forward name="sessionexpiree" path="/logon.do"/>
      </global-forwards>
    avec logon.jsp ta page d'acceuil

    tu peux mettre des vérifs aussi dans les Action :
    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
    public ActionForward execute(ActionMapping mapping,
    	    				ActionForm form,
    	    				HttpServletRequest request,
    	    				HttpServletResponse response)
    	    				throws IOException, ServletException {
    		  HttpSession session = request.getSession();
    			//Session expirée
    			if(session.getAttribute("LOGIN")==null){
    				ActionErrors errors = new ActionErrors();
    	  	      	errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.sessionexpiree"));
    	  	      	if(!errors.isEmpty())
    		  	    	saveErrors(request,errors);
    	  	      	return mapping.findForward("sessionexpiree");
    			}
    ....
    }
    Et voilà!!!!

  3. #3
    Membre averti Avatar de Shivaneth
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 349
    Points : 341
    Points
    341
    Par défaut
    Merci beaucoup,
    en fait l'erreur que je faisais c'était que je ne mettais pas la redirection au tout début de la page mais je faisais des include avant.

    Je cherche maintenant à définir un message d'erreur qui s'affichera sur la page de login pour dire à l'utilisateur pourquoi il s'est retrouvé là. Peut-on déclarer des erreurs dans une jsp à afficher dans la balise html:errors ?

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 372
    Points : 239
    Points
    239
    Par défaut
    Tout à fait : tu mets la balise <html:errors /> là ou tu veux que les messages d'erreur générés par tes actions soient affichées, et dans les actions il te suffite de faire cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ActionErrors errors = new ActionErrors();
      	      	errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.sessionexpiree"));
      	      	if(!errors.isEmpty())
    	  	    	saveErrors(request,errors);
    et ce dans la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public ActionForward execute(ActionMapping mapping,
    			ActionForm form,
    			HttpServletRequest request,
    			HttpServletResponse response)
    			throws IOException, ServletException {
    bien sur

    Bon courage

  5. #5
    Membre averti Avatar de Shivaneth
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 349
    Points : 341
    Points
    341
    Par défaut
    Merci mais je crois que tu n'as pas très bien compris ma question( ou que je me suis mal exprimée, à toi de choisir). Ce que je voudrais c'est savoir si on peut définir ces erreurs dans une jsp (et pas seulement dans une classe action).

    Mais ce n'est pas nécessaire donc merci quand même pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] Redirection si session expirée
    Par symfony_dev dans le forum Symfony
    Réponses: 4
    Dernier message: 09/05/2014, 14h23
  2. AJAX + session expirée = redirection foireuse
    Par Tchupacabra dans le forum Langage
    Réponses: 4
    Dernier message: 03/06/2008, 10h02
  3. [Sessions] Expiration de la session
    Par furtif1 dans le forum Langage
    Réponses: 1
    Dernier message: 03/01/2007, 18h49
  4. comment attraper session.expire()
    Par RolandB dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 01/08/2006, 16h49
  5. [Tomcat] session expirée redirection vers une page
    Par Casp dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 19/01/2006, 11h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo