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

Servlets/JSP Java Discussion :

[JSP][session] perte de session et sendRedirect


Sujet :

Servlets/JSP Java

  1. #1
    Membre confirm�

    Inscrit en
    D�cembre 2002
    Messages
    68
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2002
    Messages : 68
    Par d�faut [JSP][session] perte de session et sendRedirect
    Bonjour,
    dans une page A.jsp je cr�� une session et lui affecte une dur�e de 60s (pour mon exemple). Et je lui ajoute un attribut qui est un objet user.

    La page suivante B.jsp affiche une propi�t� de l'objet user. Si la session est expir�e (donc j'ai perdu les valeurs associ�es), elle renvoie vers la page de login.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    PAGE B.JSP
     
    <%@ page language="java" import="monPaquet.*" session="true" %>
    <% 
    if(session.getAttribute("user")==null){
     response.sendRedirect("login.htm");
    }
     
    user monUser=(user)session.getAttribute("monUser");
    out.print(monUser.getTonNom());
    Tant que la session n'a pas expir�e, tout va bien, la page B s'affiche correctement.
    Si la session a expir�e, j'obtient une erreur "nullPointerException"
    Apparament cette erreur est g�n�r�e par la ligne :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    out.print(monuser.getTonNom());
    il semble que monUser est null ce qui est logique dans la mesure ou si la session est expir�e, monUser ne peut �tre initialis�.
    Hors, si la session est expir�e, il y aurait du y avoir une redirection vers login.htm et le code suivant la redirection (response.sendRedirect) ne devrait pas �tre interpr�t� (en tout cas c pr�sent� tel quel dnas le bouquin JSP wrox/eyrolles).

    Ou je me suis plant� ?

    Merci pour votre aide.

  2. #2
    Membre exp�riment�
    Avatar de knotty
    Inscrit en
    Mars 2002
    Messages
    126
    D�tails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 126
    Par d�faut
    essaie avec un else apres ton if.

    Bon courage
    Christophe Ludet
    Testez vos connaissances Java - http://knotty.developpez.com
    Donner des ailes a votre application (J2EE patterns) - http://knotty.developpez.com/j2ee

  3. #3
    Membre confirm�

    Inscrit en
    D�cembre 2002
    Messages
    68
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2002
    Messages : 68
    Par d�faut ya pas mieux comme solution ?
    ya pas mieux comme solution ?
    parce que �a veut dire qu'il faudrait que je mette tous mon code JSP dans mon else.
    C'est pas g�nial comme solution.
    Ce que je voudrias, �'est avoir une session et s'il est expir�e, que l'internaute soit redirig� vers login.htm

  4. #4
    Membre chevronn�

    Inscrit en
    Juillet 2002
    Messages
    116
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 116
    Par d�faut
    Tu peux toujours faire sortir de la page jsp de mani�re brutale, mais attention, je previens, c'est pas surper propre, par contre c'est radical :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    PAGE B.JSP 
     
    <%@ page language="java" import="monPaquet.*" session="true" %> 
    <% 
    if(session.getAttribute("user")==null){ 
     response.sendRedirect("login.htm"); 
     return;
    } 
     
    user monUser=(user)session.getAttribute("monUser"); 
    out.print(monUser.getTonNom());

  5. #5
    Membre confirm�

    Inscrit en
    D�cembre 2002
    Messages
    68
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2002
    Messages : 68
    Par d�faut
    effectivement �a marche sans probl�me. merci.
    Apparament, �a ne g�n�re pas d'erreur sur la console serveur alors c'est peut �tre crade comme solution mais moins que de devoir mettre tout son code JSP dans un else

    pourtant dnas mon bouquin, ils disent que le sendRedirect suffit pour arr�ter l'�x�cution du JSP. Alors bon, je serias curieux de savoir comme font les programmeurs JSP (moi j'en suis encore au chemin de croix vers la Connaissance )

  6. #6
    Membre �m�rite Avatar de bizet
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Par d�faut
    Les programmeurs auraient mis le code dans un Else!!

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Ao�t 2006
    Messages
    3 274
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2006
    Messages : 3 274
    Par d�faut
    J'aurais plut�t mis le test de session dans une servlet ou carr�ment un filtre de servlet.
    C'est quand m�me plus propre.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. M�langer Facelets et JSP (perte de session)
    Par kotakota dans le forum Servlets/JSP
    R�ponses: 0
    Dernier message: 03/09/2012, 14h22
  2. [JSP/AJAX] Perte de session et de response dans ma JSP
    Par maxbzh56 dans le forum Servlets/JSP
    R�ponses: 1
    Dernier message: 22/08/2006, 17h34
  3. [Struts]Redirection globale en cas de perte de session
    Par Mercenary Developer dans le forum Struts 1
    R�ponses: 10
    Dernier message: 03/02/2006, 14h40
  4. [navigateur]Probl�me de pertes de sessions sous IE (.js)
    Par Invit�4 dans le forum G�n�ral JavaScript
    R�ponses: 26
    Dernier message: 21/11/2005, 17h53
  5. [VB.NET] Perte de session entre 2 projets
    Par TekP@f dans le forum ASP.NET
    R�ponses: 3
    Dernier message: 02/05/2005, 09h12

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