我创建了一个Web应用程序, 如果有用户会话,我需要维护会话,然后只有这样才能让用户看到jsp.
我之前使用过jsp servlet,但我是struts2的新手.
这里我在我的动作类中设置用户名:
修订后的守则
private HttpSession session;
public void setSession(HttpSession session) {
// TODO Auto-generated method stub0
this.session = session;
}
public HttpSession getSession() {
return session;
}
public String getLoginStatus(){
session = request.getSession();
session.setAttribute("userName", loginBean.getUsername());
return SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)
现在,当我在操作后重定向到下一页时,它会显示一次会话值.之后,在每个页面上,我在会话中找到空值.
<%
String userName = (String)session.getAttribute("userName");
System.out.println(userName);
if(userName == null || userName.equals("") ){
response.sendRedirect("login.jsp");
}
%>
Run Code Online (Sandbox Code Playgroud)
我在某处读到动作类会话的范围仅限于一页 - 我该如何解决这个问题?
任何例子都对我很有帮助.