假设我没有任何“密码保护”页面,但有时需要知道哪个用户点击了一些 jsf 按钮,以下是否可以,或者我也应该使用 HttpServletRequest.login()
一些处理登录的托管bean:
public void login(String name, String password) {
try {
HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
MyUser user = userEjb.login(name, password);
request.getSession().setAttribute("user", user);
} catch {
//login failed message..
}
}
h:commandButton 调用的方法:
public void doSomething() {
HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
MyUser user = request.getSession().getAttribute("user");
//Is the user object 'safe' here?
}