Stöhr Miroslav RNDr. Ph.D. wrote:
Moje otázka: Jde toto nějakým způsobem odchytit (javascript?) a session invalidovat? 
Jediné co mě napadlo je javascriptem neustále "pingat" na server a jakmile se 
ping nedostaví zavolat session.invalidate(), ale to má spoustu nevýhod (zatížení serveru, 
nechtěná invalidace když se ping neodstaví vinou pomalé linky, atd.)

Jde a nejde - záleží hodně na prohlížeči a uživatelském nastavení, ale u intranetové aplikace je větší šance mít tohle pod kontrolou.

Pomocí události onbeforeunload lze ovlivnit něco ještě na dané stránce (např. vyvolat umělé kliknutí na odhlašovací link), pomocí události onunload už můžete jenom zavolat JavaScript, který někam "pingne" na server.

Ukázku fční podmíněné implementace onbeforeunload najdete na http://pro-thoughts.blogspot.com/2006/03/onbeforeunload-event.html a v odkazovaném příkladu: http://www.webreference.com/dhtml/diner/beforeunload/bunload4.html

Má to tu nevýhodu, že se události vyvolají i v případě, kdy uživatel klikne na tlačítka Back nebo Reload v prohlížeči.

dond
--
David Ondřich <[EMAIL PROTECTED]>, ICQ# 165542353, +420608101363

Odpovedet emailem