Post Mortem  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
guariba
JavaTeenager
[Avatar]

Membro desde: 20/11/2002 14:18:50
Mensagens: 177
Localização: Rio de Janeiro/RJ
Offline

Existe algum macete para se enviar um GET ao servidor Web caso o usuário feche o browser?
[Email] [MSN]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

Talvez de pra fazer um JavaScriptzinho que pega o onClose da janela... mas lembre-se:

- O browser pode nao ter JavaScript habilitado
- A energia eletrica, conexao com a internet ou uma bigorna podem cair (e entao a janela nunca vai ser fechada)

Portanto, use o SessionListener... eh beeeem melhor
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Mas, se mesmo assim você insistir, faça:


gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Vegetto
GUJ Ranger

Membro desde: 22/06/2003 15:39:49
Mensagens: 797
Localização: Campinas
Offline

Mas mesmo assim eu acho que não rola, a não ser que você abra um popupzinho com a página que você quer dar GET, e o feche logo em seguida

Falando em Post Mortem tem um site bem loko www.rkpost.net que é de um cara que faz ums desenhos muito loucos para diversos card games, entre eles o mais famoso do mundo Magic: The Gathering
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

O ZipMail utiliza esse sistema de se abrir um popup para gerenciar os LOGOUTs do site.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
guariba
JavaTeenager
[Avatar]

Membro desde: 20/11/2002 14:18:50
Mensagens: 177
Localização: Rio de Janeiro/RJ
Offline

Xiii, sempre achei que aquela bigorna podia me trazer problemas! Será que eu terei de tirá-la de cima do servidor?

Sei que vcs devem estar pensando: pra que esse cara fica perguntando esse monte blá-blá-blá? Aprende a tecnologia e não enche mais o saco!

O problema é que eu gosto de saber o que acontece behind the scenes. Sei lá, deve ser paranóia ou um Transtorno Obsessivo Compulsivo do meu lado C++.

Por exemplo, como o servidor sabe que sessão está ativa se na própria definição do http não existe a obrigatoriedade do navegador manter a conexão de rede, mesmo com HTTP 1.1 e keep-alive ? Fiz uns testes com o Internet Explorer e o maledito encerra a conexão após 2 minutos de inatividade, mesmo alterando a opção do registro HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternetSettingsKeepAliveTimeout para, por exemplo, 40 minutos. O Firebird se comportou direitinho e não se desconectou.

Como a SessionListener faz então para reconhecer a presença do usuário? Ela usa uma SessionTarot, SessionMedium ou uma SessionParanormal?
[Email] [MSN]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline

Os servidores normalmente implementam sessão usando session cookies e server-side expiration.

Quando uma sessão é aberta, o servidor manda um cookie pro cliente (SID -> 12345)
Assim sempre que o cliente falar com o servidor ele manda o cookie com o seu SID, 12345, e o servidor tem como associar SID -> sessão.
Mas como o servidor sabe quando uma sessão foi encerada? Programaticamente, quando a aplicação chamar o método invalidate() do objeto Session.
Automaticamente, toda vez que a sessão for referida o servidor quanda o timestamp deste acesso, quando o último acesso for muito antigo a sessão é terminada.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
wender
JavaTeenager
[Avatar]

Membro desde: 08/01/2003 10:50:04
Mensagens: 153
Offline

O conteiner só chama a classe que implementa o SessionListener quando o invalidate é chamado(). Se eu colocar um tempo máximo de inatividade e esse tempo for atingido a sessão terminará e o método será invocado? Por exemplo o cara fecha a janela sem efetuar logout onde eu chamo o session.invalidate()...depois da session expirada a classe será invocada?

Pra finalizar, qual a sintaxe correta do listener dentro do web.xml?
[MSN] [ICQ]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline



e vai antes da declaração de qualquer servlet.

Former LIPE.
[ICQ]
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team