我不知道爲什麼我的session.getAttribute(「用戶」)返回非空,但屬性值在幾分鐘後retun null,它可能是由於會話超時,但爲什麼只有屬性值返回null,但其他會話仍然存在甚至session.getAttribute(「user」)返回非空。JSP Session.getAttribute()返回null
這是我的網頁流量,用戶登錄
LoginServlet
User s = new User();
s.retriveuser();
session.setAttribute("balance", s.getBalance());
session.setAttribute("username", s.getUsername());
session.setAttribute("user", s);
我的個人資料
User user = new User();
if (session.getAttribute("user") == null) {
response.sendRedirect("login.jsp");
} else {
user = (model.User) session.getAttribute("user");
}
<tr>
<th>Gender:</th>
<td><%=user.getGender()%></td>
</tr>
<tr>
<th>Name:</th>
<td><%=user.getName()%></td>
</tr>
它可以顯示在用戶登錄的一切工作正常,幾分鐘後性別名稱...將顯示爲空而不是重定向到登錄頁面。而我的餘額和用戶名會話仍在那裏。 設置其他用戶之前=(用戶)session.getAttribute(「用戶」);我正在使用
<jsp:useBean id="user" class="model.User" scope="session" />
我沒有同樣的問題。但是,我的問題是相似的。我在表單中設置了id屬性(id =「name」)。我將這個表單提交給一個servlet。 servlet接受id並使用request.getParameter(「name」)獲取參數。該參數設置爲會話屬性。當我嘗試訪問這個,最終使用JSP的屬性,我得到一個null。爲什麼? –