Ich muss eine Webanwendung entwickeln, wo die Werte Benutzereingaben auf der Anmeldeseite von mehr als einer JSP-Seite verwendet werden. Also habe ich Sitzungen dafür verwendet. Es funktioniert gut, wenn ich als registrieren ein Benutzer und wieder anmelden. Sobald ich den Computer neu starte, zeigt es in session.getAttribute() Null-Wert. Was könnte das Problem sein?Sitzungen in Jsp scheint nicht richtig zu funktionieren
hier ist der Code in login.jsp
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/vaishnavi","root","atreyasa");
name=request.getParameter("username");
password=request.getParameter("password");
st=con.createStatement();
st1=con.createStatement();
rs=st.executeQuery("select * from admins where username='"+name+"' and password='"+password+"'");
rs1=st1.executeQuery("select * from admins where username='"+name+"' and password!='"+password+"'");
if(rs!=null&&rs.next()){
session.setAttribute("username",name);
response.sendRedirect("http://127.0.0.1:8080/Project_programs/home.jsp");
}
else if(rs1!=null&&rs.next()){
out.println("Enter correct password");
}
else{
response.sendRedirect("http://127.0.0.1:8080/Project_programs/register.jsp");
}
}
catch(Exception e){
out.println(e);
}
Home.jsp die session.getAttribute Zugriffe()
out.println("<h1 align=center>Welcome "+session.getAttribute("username")+"</h1>");
Nun, aber Sitzung wird wieder für die neue Jsp Anfrage Rignt erstellt werden? und ich setze diese Werte erneut in der session.setAttribute() .... Ich bin immer noch nicht in der Lage zu greifen. Auch habe ich gerade gemerkt, dass dies für den ersten Login-Versuch nach dem Neustart .... Sobald ich mich abmelde und wieder einloggen funktioniert gut –
Das ist richtig, eine Sitzung ist in der Anfrage enthalten, die ein Client sendet. Wenn ich es richtig verstanden habe, starten Sie Ihren Computer neu, versuchen Sie, auf die Seite zuzugreifen, und Sie werden nach Ihren Anmeldeinformationen gefragt? Dann, wenn Sie bereitstellen (d.h.login) läuft es von da an reibungslos? Wenn das so ist, ist es vollkommen normal, da die Sitzung, wie ich in meiner Antwort erwähnte, von unbeständiger Natur ist und beim Neustart der Maschine entfernt wird. – solstinger
Gut, sobald ich die Login-Credentials ... es zeigt Sitzungswert Null zum ersten Mal nach dem Neustart (oder schließen und öffnen Sie den Browser) und funktioniert, wenn ich wieder danach anmelden –