jAbLoK

blog už dávno nejen o javě

Ohlídání expirace HTTP Session pomocí JavaScriptu

leave a comment »

… nebo jak to elegantně vyjádřit. Uživatele všichni známe, to jsou ti pánové a dámy, kteří se přihlásí do vaší webové aplikace, něco málo udělají, pak jdou na oběd, pak si dají kávičku a pak se vrátí k práci (v lepším případě). Za tu dobu vámi použitý webový server pochopitelně zruší takovému uživateli session. Po odeslání formuláře pak uživatele čeká nějaká pěkná chybová hláška nebo rovnou HTTP Internal Server Error 500, stacktrace a formát disku.

Není ovšem všechno ztraceno. Můžeme si pomoci následujícím JavaScriptovým trikem. JavaScript je generován pomocí JSP:

   var ALERT_LIMIT = 5;
   function showAlert() {
     alert("Za " + ALERT_LIMIT + " minut budete odlogováno.");
   }
   var alertCounter = ((<%= session.getMaxInactiveInterval() %> - (this.ALERT_LIMIT * 60)) * 1000);
   setTimeout("showAlert()", alertCounter);

Samo o sobě to nic neřeší, ovšem namísto alertu je možné např. zobrazit přihlašovací formulář v novém okně, které se po přihlášení uživatele opět zavře. Uživatel tak nepřijde o změny, které během předchozího sezení udělal. Případně je nutné ošetřit práci s HTML frames, ale to už nechám na Vás.

Autorem je Lukáš Duffek.

Written by tomucha

Duben 19, 2004 na 12:15 pm

Zasláno do Java

Napsat komentář

Vyplňte detaily níže nebo klikněte na ikonu pro přihlášení:

WordPress.com Logo

Komentujete pomocí vašeho WordPress.com účtu. Log Out / Změnit )

Twitter picture

Komentujete pomocí vašeho Twitter účtu. Log Out / Změnit )

Facebook photo

Komentujete pomocí vašeho Facebook účtu. Log Out / Změnit )

Google+ photo

Komentujete pomocí vašeho Google+ účtu. Log Out / Změnit )

Připojování k %s

%d bloggers like this: