Fala ai galera.
Existe alguma forma de eu enviar uma mensagem ao servidor apos o usuário clicar no X dá página ?
Porque se eu colocar um botão de fechar na página eu consigo, porem não posso contar que o infeliz vai clicar nesse botão toda vez que quiser fechar a página.
Se alguem souber eu agradeço.
vlw!
[quote=ruyoutor]Fala ai galera.
Existe alguma forma de eu enviar uma mensagem ao servidor apos o usuário clicar no X dá página ?
Porque se eu colocar um botão de fechar na página eu consigo, porem não posso contar que o infeliz vai clicar nesse botão toda vez que quiser fechar a página.
[/quote]
Se vc está fazendo isso para controlar a sessão o usuário de alguma forma ( por exemplo, terminá-la) dê uma olhada no listeners de sessão padrão da API de servlets.
Ná verdade é exatamente para isso gerenciar a sessão.
O que quero fazer.
Tenho que impedir que o usuario se log mais de uma vez no sistema, então pensei em fazer da seguinte forma.
Toda vez que ele se logar eu incluo o objeto usuario na sessão e com isso o container executará o método attributeAdded da interface HttpSessionAttributeListener que foi implementada por uma classe minha. Nesse método eu vou atualizar o registro desse usuário no banco para logado e quando ele tentar logar de novo eu testo através do registro se ele está logado e se estiver eu não deixo ele logar de novo. Se ele fizar logout no sistema corretamente eu removo o objeto da sessão e o método attributeRemoved atualiza o registro no banco para não logado. Sendo que se ele fechar a página pelo browser o servidor não vai saber que ele saiu do sistema e então, eu vou precisar esperar até que a sessão expire para atualizar o registro no banco como não logado.Só que se esse infeliz tentar logar de novo antes da sessão antiga expirar o sistema não vai deixar.
O que eu pensei em fazer.
Eu iria guardar no banco o id da sessão quando ele fizesse logon e quando acontecer de ele tentar logar e o registro ainda estiver como logado eu localizo a sessão através do id e derrupo o logon antigo. Só que se por acaso ele tiver dado a senha dele para alguem e ao invez da sessão estar esperando para ser removida ela estiver sendo usada por outra pessoa que esteja logado no sistema com o mesmo login eu vou derrubar essa pessoa do sistema.
Por isso que queria uma forma de notificar o servidor quando ele fechar a aplicação no X dá pagina. á tentei utilizar o evento window.onclose mais não rolou.
Se não existir eu vou fazer da forma que eu pensei mesmo.
uffa! rsrsr
Obrigado.