读书人

请问Struts2 Action类中Session值传递

发布时间: 2013-01-11 11:57:35 作者: rapoo

请教Struts2 Action类中Session值传递问题
本人新手,请各位指导

我想在两个Action之间传递存放在Session中的用户ID
试了两种方法,还一种就是HttpSession,也是得到空值,我对Session不太了解


//这是我获得Session的方法
ActionContext actionContext = ActionContext.getContext();
Map session = actionContext.getSession();
session.put("userid",userid)
//存放在这个Session中的值,另一个Action怎么取?
//另一个类中使用
session.get("userid");
//获得是空。

[解决办法]
每个用户请求服务器都会返回一个sessionid来保证session的唯一性的。
你确实你保存的userid不为空吗? 如果你保存的userid不为空,按理不会出现空的。
先检查一下
[解决办法]
获得方式就不对把 这样试试

public class LoginAction3 extends ActionSupport {
//第三种取得方式
private HttpServletRequest request;
private HttpSession session;
private ServletContext application;

public LoginAction3() {
request = ServletActionContext. getRequest();
session = request.getSession();
application = session.getServletContext();
}

@Override
public String execute() throws Exception {
request.setAttribute( "r1", "r1");
session.setAttribute( "s1", "s1");
application.setAttribute( "a1", "a1");
return SUCCESS;
}

}

读书人网 >Java Web开发

热点推荐