Galera dei uma catada na net mais todos os posts não tinham solução, preciso matar a sessão do usuário após ele fechar a aba do browser, hoje ele se loga e coloco ele na sessão e quando vou iniciar a aplicação verifico se ele está na ativo porém se eu fechar a aba quando eu abrir novamente ele continua ativo, alguém tem alguma idéia?
Tenta com session.invalidate()
Sim eu sei que ele cancela a sessão mais preciso que isso seja feito ao fechar a aba, onde eu posso fazer esse método?
Nesse caso é o bom e velho JavaScript
Como assim fechar a aba?
É o navegador, se for so tem como via javascript mais não é garantido funcionar em todos os browser’s.
Quando o cliente fecha o navegador a sessão ja fecha, se não existe nenhuma outra janela aberta do site!
sim se o navegador fechar ele perde a sessão porém os browsers tem as abas se eu fechar a aba em que o sistema está aberto ele tem que perder o acesso, assim como é feito em sites de bancos. Preciso de algum método que eu possa chamar o session.invalidate();
Tem como através do javascript chamar um método do managedBean?
Consegui segundo a dica do “Walter Mourão” do groups google jsf.
Criei um servlet que mata a sessão e chamo ele através de um XmlHttpRequest
porém agora estou com uma dificuldade, preciso chamar meu método javascript na hora que irá fechar a aba eu coloquei no evendo onunload do body mais cada vez que dou F5 mata a sessão, alguém tem alguma idéia?
Dê uma olhadinha aqui:
http://www.codeproject.com/Articles/58835/Window-Close-Event-of-Browser
Esse lugar mostra algumas das técnicas para capturar o fechamento o brower (ou sua aba) com javascript, sem capturar atualizações e coisas do tipo.