Bonjour

J'ai un souci concernant la fermeture d'une session déja ouverte. En effet, j'ai une servlet Déconnexion qui permet d'invalider une session:

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
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ejb.*;
import javax.servlet.RequestDispatcher;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpSession;
 
 
 
@WebServlet(name="Deconnecter", urlPatterns={"/Deconnecter"})
public class Deconnecter extends HttpServlet {
 
     User pers;
     RequestDispatcher disp;
   HttpSession ma_session;
 
public void doGet(HttpServletRequest requete, HttpServletResponse reponse)throws ServletException , IOException
 {
  doPost(requete , reponse);
 }
 
public void doPost(HttpServletRequest req, HttpServletResponse rep) throws IOException, ServletException
 {
    ma_session =req.getSession(true);
    ma_session.invalidate();
 
      disp = req.getRequestDispatcher("index.jsp");
      disp.forward(req, rep);
}
 
 }
Ensuite j'ai ma page jsp qui appelle la servlet Déconnecter qui permet à l'utilisateur de fermer sa session.

Voici un extrait de ma page jsp:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
.... <script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>
 
<%
HttpSession sess =request.getSession(true);
 
User u;
u = (User)sess.getAttribute("User");
 
%>
 
<body >.....
Le problème est que après m’être déconnecté, lorsque j'appuie sur le bouton "Précédent" de mon navigateur, la session est toujours active.

Merci