bem, tenho um session scope, que está funcionando somente atraves de injeção de dependencia. Meu problema é que tenho uma pagina header.jsp(que nao tem controller) e que os dados do meu Usuario da sessao devem ficar lá, mais quando uso o ${userSession.nome} na pagina, nao aparece nada, só consigo acessar na pagina index passando UserSession atraves do construtor, mais o header.jsp é um include do meu template, ou seja eu quero que toda pagina que eu navegar o usuario da sessao esteja la e que nao precise eu passar toda vez no construtor de um controller.
[quote=maaarkin]bem, tenho um session scope, que está funcionando somente atraves de injeção de dependencia. Meu problema é que tenho uma pagina header.jsp(que nao tem controller) e que os dados do meu Usuario da sessao devem ficar lá, mais quando uso o ${userSession.nome} na pagina, nao aparece nada, só consigo acessar na pagina index passando UserSession atraves do construtor, mais o header.jsp é um include do meu template, ou seja eu quero que toda pagina que eu navegar o usuario da sessao esteja la e que nao precise eu passar toda vez no construtor de um controller.
[/quote]
Cara, se o objeto esta na sessão, ele já vai estar na memoria do servidor!
Então vc não precisa se preocupar com isso.
Provavelmente vc esta fazendo algo errado maninho…
Mostra pra gente a sua classe UserSession ?
Segue o codigo
@Component
@SessionScoped
public class UserSession {
private String nome = "teste";
private Repositorio<Usuario> facade;
public UsuarioWeb(Repositorio<Usuario> facade ) {
this.facade = facade;
}
public void login() {
}
public void setNome(String nome) {
this.nome = nome;
}
public String getNome() {
return this.nome;
}
}
fiz com esse atributo nome, somente pra testar, mais nao está aparecendo quando chamo ela.
vc precisa receber o UserSession no construtor de alguma classe para ele ser criado. A partir disso ele é acessível via ${userSession} em qualquer jsp, durante a sessão do usuário.