Oi pessoal, tenho uma pagina em JSF e Hibernate,
tenho um Bean de login que faz a autenticação do usúario, o redireciona e guarda na sessao o id e tipo dele,
Agora eu queria saber como poderia ao entrar em uma pagina, trazer os dados desse usuario baseado no ID, nesse caso como eu poderia buscar o ID dele na sessão.
bean de login
public String loginPorID() {
sessao = CriadorDeSessaoNovo.getSession();
Criteria listagem_query = sessao.createCriteria(Usuario.class);
listagem_query.add(Restrictions.eq("usu_nome", getUsu_nome()));
listagem_query.add(Restrictions.eq("usu_senha", getUsu_senha()));
List<Usuario> lista_usuario = listagem_query.list();
int tamanho_lista = lista_usuario.size();
String dados = "";
if (tamanho_lista == 1) {
for (int i = 0; i < tamanho_lista; i++) {
Usuario obj_usu = lista_usuario.get(i);
dados = dados
+ obj_usu.getUsu_id()
+ " - " + obj_usu.getUsu_tipo();
FacesContext.getCurrentInstance().getExternalContext().
getSessionMap().put("tipoUsuario", obj_usu.getUsu_tipo());
FacesContext.getCurrentInstance().getExternalContext().
getSessionMap().put("idUsuario", obj_usu.getUsu_id());
if ((obj_usu.getUsu_tipo()).equals("Administrador")) {
return "sec_BemVindo.jsf?faces-redirect=true";
} else if ((obj_usu.getUsu_tipo()).equals("Comum")) {
return "sec_BemVindo.jsf?faces-redirect=true";
}
}
}
System.out.println("NÃO validou");
sessao.close();
FacesContext.getCurrentInstance().addMessage("FormLogin:logar", new FacesMessage("Login ou senha incorretos!"));
return null;
}