[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:
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:
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.
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