Oto fragment strony logowania
String login = request.getParameter("login");
String haslo = request.getParameter("haslo");
if (weryfikacjaOsoby(login , haslo)){
if ((request.getSession(false) != null)) {
if (request.getSession().getAttribute("userName") != null) {
request.getSession().invalidate();
}
}
HttpSession sesja = request.getSession(true);
sesja.setAttribute("userName", login);
request.setAttribute("sesjaId",sesja.getId());
request.setAttribute("userName",login);
request.getRequestDispatcher("/zalogowany.jsp").forward(request,response);
}
a to fragment zalogowany.jsp
<p> Zalogowałeś się : <%= request.getAttribute("userName") %></p>
<p> Identyfikator sesji (odczytany jako atrybut) : <%= request.getAttribute("sesjaId") %></p>
<p> Identyfikator sesji (odczytany przez getId()) : <%= request.getSession(false).getId() %></p>
Oba identyfikatory sesji są identyczne. Niestety po odświeżeniu strony oba identyfikatory zmieniają się.
W jaki sposób mogę sprawdzić pierwotny identyfikator sesji z pierwszej strony na kolejnych stronach ?
linijka :
Identyfikator sesji (odczytany przez getId() ale pierwotne) : <%= StronaLogowania.sesja.getId() %>
powoduje całą stronę błędów :)</p>