Botão X (Fechar) Browser/Navegador

Senhoras e Senhores,
Preciso de um grande help, na aplicação onde eu trabalho (Web) temos uma tela principal onde essa possui link’s para os diversos processos do sistema, o problema em questão se dá quando o “usuário” não clica no link “logoff” indo direto no botão de fechar do browser, deixando consequentemente sua conexão/cursores todos abertos.
Eu preciso fazer com que ao clicar no botão fechar seja redirecionado para a Action Logoff.

Desde já agradeço por toda ajuda!

Não sei se é possível pegar uma ação externa ao java…pois clicar no botão de fechar refere-se ao browser…

Em todo caso vc poderia estjudar pool de conexões… assim existiria diversas conexões para quem quisesse usar e o pool controlaria as conexões remanescentes sem utilização.

Existem algumas formas para identificar que um usuário não está mais no sistema.

A mais simples é criar um código em JavaScript que fique “pingando” o server de X em X minutos. Quando o server pára de receber este ping, quer dizer que o usuário não está mais no sistema.

Mas de qualquer forma, deixar conexões e cursores abertos é uma péssima idéia. Consomem muita memória.
O ideal é abrir as Connections quando é necessário e fechá-las o assim que possível.

cria um evento onUnload no body da sua pagina. E chama a tua action de logoff na funcao do evento onUnload.

...
   function logoff(){
       formLogoff.submit();
   }
...

...
   <body onUnload="logoff()">
      <form name="formLogoff" action="suaActionDe logoff">
...

O evento onUnload não esta me atendendo pois ao navegar pelo sistema está chamando o evento em todas ações de menu e realmente ele não esta funcionando com o IE somente no firefox.

Alguem possui alguma outra forma de fazer isso? Uma espécie de interceptar quando o usuário clicar no botão X do navegador.

:slight_smile: