我有一個處理登錄的servlet類。在我的登錄程序結束時,我這樣做:我在哪裏放置會話信息?在HttpServletRequest.setAttribute()?
// jsp page
...
Helper.loginUser(request);
// Helper.java
public static void loginUser(HttpServletRequest request) {
request.getSession().setAttribute("username", "john");
}
爲了記住誰是用戶在頁面加載之間。在另一個servlet(處理ajax調用)中,我需要查看該會話是否對用戶有效。看起來像這樣:
// OtherServlet.java
public void doPost(HttpServletRequest req, HttpServletResponse resp) {
String username = (String)req.getSession().getAttribute("username");
}
但是獲取屬性總是返回null。我應該在哪裏存儲會話信息,以便我可以在不同的servlet之間進行恢復?
感謝
什麼是你的servlets的URL?具體來說,URL是否具有相同的主機名? – Pointy 2010-06-21 21:42:49
這是相同的域,這些網址就像[mysite.com/user/login]和[mysite.com/user/reports]。 – user246114 2010-06-21 21:44:18