Bom dia galera.
Gostaria de saber como faço para guardar dados de uma sessão e passar para outra?
Por exemplo:
Tenho uma tela de LOGIN, quando o usuário logar o nome desse usuário ficará aparecendo em todas
as telas em que ele abrir.
Mais uma dúvida, por exemplo, o usuário está usando o sistema, e vem outro e faz login, não irá interferir um com o outro
pelo fato de estar guardando a sessão do primeiro Usuário?
Obrigado.
[quote=Java_Terminator]Bom dia galera.
Gostaria de saber como faço para guardar dados de uma sessão e passar para outra?
Por exemplo:
Tenho uma tela de LOGIN, quando o usuário logar o nome desse usuário ficará aparecendo em todas
as telas em que ele abrir.
Mais uma dúvida, por exemplo, o usuário está usando o sistema, e vem outro e faz login, não irá interferir um com o outro
pelo fato de estar guardando a sessão do primeiro Usuário?
Obrigado.[/quote]
Escopos
[list]Aplicação - comum para todos usuários, o que é escrito aqui é visível a todos.[/list]
[list]Sessão - visivel somente para cada usuário.[/list]
FacesContext facesContext = FacesContext.getFacesContext();
HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(true);
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("currentUser", user);
Usuario user = (Usuario) session.getAttribute("currentUser");
Bom dia Terminator,
O ideal seria você mapear um ManagedBean em escopo de sessão.
E então em suas paginas você colocaria um outputText mostrando o nome do usuário.
Ex:
Você faria o mapeamento dessa classe em escopo de sessão
[code]public class CurrentUser {
private id;
private name;
//Gets e Sets
}[/code]
E a cada pagina ou no template você colocaria algo mais ou menos assim:
<outputText value="#{currentUser.name}" />
Atenciosamente,
Fábio
Valeu pessoal, vou testar aqui, qualquer coisa entro em contato shushua…
obrigado.