我在action中这样写ActionContext actionContext = ActionContext.getContext();
Map session = actionContext.getSession();
session.put("user", user);user是一个对象,已经赋值用来测试,在另一个action中取用userActionContext actionContext = ActionContext.getContext();
Map session = actionContext.getSession();
session.get("user", user);
user为null,但我在jsp页面中可以直接用sesson.getAttribute("user")中可以取到user对象,这是什么原因,请高手解答,如果我想在action中取用session里面设的该怎么办呢?
Map session = actionContext.getSession();
session.put("user", user);user是一个对象,已经赋值用来测试,在另一个action中取用userActionContext actionContext = ActionContext.getContext();
Map session = actionContext.getSession();
session.get("user", user);
user为null,但我在jsp页面中可以直接用sesson.getAttribute("user")中可以取到user对象,这是什么原因,请高手解答,如果我想在action中取用session里面设的该怎么办呢?
import com.anxin.bean.User;
import com.anxin.service.UserService;
import com.opensymphony.xwork2.ActionContext;
public class UserAction extends BaseAction{
private UserService service;
private User user;
public String login(){
user=service.checkLogin(user);
if(user!=null){
ActionContext.getContext().getSession().put("user", user);
return "success";
}
else{
this.addActionMessage("用户名或密码错误!");
return "input";
}
}
public UserService getService() {
return service;
}
public void setService(UserService service) {
this.service = service;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
User user=(User) ActionContext.getContext().session.get("user");
你在jsp中取到了,在action中是绝对能取到的
Map session = actionContext.getSession();
session.get("user", user);