Tenho um managedBean com o scopo de ApplicationScoped.
Toda vez que eu terminar uma sessão ou acontecer um timeout, preciso atualizar um atributo nesse bean.
Tentei implementar um listener mas não estou conseguindo chamar minha bean para setar o atributo.
publicclassSessionListenerimplementsHttpSessionListener{@OverridepublicvoidsessionCreated(HttpSessionEventse){}@OverridepublicvoidsessionDestroyed(HttpSessionEventse){//aqui preciso chamar meu managedBean para atualizar um atributo...se.getSession().invalidate();System.out.println("Sessão encerrada!");}}
Antes de uma sessão ser morta, que o metodo sessionDestroyed(HttpSessionEvent se) acesse meu bean de scopo aplicacao pra atualizar um atributo da mesma.
Mas não estou conseguindo chamar o managedBean dentro desse método.
Podem me ajudar?
F
fabiocesar.ti
Tem como injetar um managedBean, no meu caso o de scopo aplicação em um HttpSessionlistener?
Roselito_Favero_da_S
Tem, se os dois objetos estiverem no mesmo contexto. Então acho que você deve declarar seu HttpSessionListener como um managed bean, também. Aí poderá injetar outro managed bean nele.