我目前正在尝试检索登录用户的所有数据,以便我可以使用它来列出他的电子邮件或其联系人,或者可以修改或添加新的数据。
开始时,在登录屏幕中,我使用一种方法将该用户置于会话中。
private void putUserInSession(Usuario user) {
Map<String, Object> session = FacesContext.getCurrentInstance()
.getExternalContext().getSessionMap();
session.put("LOGGEDIN_USER", user);
}
为了检索该用户在页面中显示他的个人数据以便修改和更新它,我在.xhtml页面内的一个调用中使用以下一个,因此它返回&#34; exito&#34; (成功)它将带我进入编辑页面。
public String proceed(){
Usuario usermodificar = (Usuario) getObjectFromSession("LOGGEDIN_USER");
usuario.setUsuario(usermodificar);
return "exito";
}
private Object getObjectFromSession(String key) {
return FacesContext.getCurrentInstance().getExternalContext()
.getSessionMap().get(key);
}
我尝试在会话中将bean值设置为用户,但不显示任何数据。
我也尝试在其他bean中检索它,比如在用户帐户中保存给定的电子邮件(所以我需要他或她的ID)
Usuario usuario = (Usuario) getObjectFromSession("LOGGEDIN_USER");
但它并不像以前的情况那样有效。