|
|
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
Господа. Подскажите плиз. Аппликейшн использует myFaces. Когда заходит юзер в приложение, в сессию (http) помещается обьект типа String name. Когда он нажимает logout, этот обьект из сесии удаляется. А что делать, если он просто закрыл браузер? Обьект в сессии-то остался и такие будут накапливаться. Как решать эту проблему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:31:21 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
web.xml ... <session-config> <session-timeout>bla-bla-bla</session-timeout> </session-config> ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:36:55 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
то есть если прописываю Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:39:17 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
zalexakaweb.xml ... <session-config> <session-timeout>bla-bla-bla</session-timeout> </session-config> ... да ещё этим фсё убивать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:39:45 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
Спасибо. А как собственно использовать HttpSessionListener Наверно можно както выводить сообщение юзеру. А то получается, если сильно ограничить тайм-аут то ктото не усреет доделать работу. Хотя конечно для этого можно просто включить счетчик в ине любом с момента создания обьекта в сессии и просто выдать сообщение перед этим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:56:09 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
osonА что делать, если он просто закрыл браузер? Обьект в сессии-то остался и такие будут накапливаться. - даже если клиент не закрывал окно браузера, а тупо пялился в него целый час, сессия погибнет вместе со всеми связанными данными, по истечении заданого таймаута ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 13:57:26 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
osonСпасибо. А как собственно использовать HttpSessionListener Наверно можно както выводить сообщение юзеру. А то получается, если сильно ограничить тайм-аут то ктото не усреет доделать работу. Хотя конечно для этого можно просто включить счетчик в ине любом с момента создания обьекта в сессии и просто выдать сообщение перед этим. Мне кажется Вы плохо представляете себе работу сессий: 1. интервал жизни сессии отсчитывается от последнего обращения (запроса) клиента. 2. между запросами данные помещенные в сессию хранятся в сериализованом виде (обычно в виде файлов) 3. если запускать процесс отсчитывающий время при начале каждой сессии Вы сильно пригрузите сервер (возможно он свалится из за нехватки памяти под потоки) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 14:03:00 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
osonСпасибо. А как собственно использовать HttpSessionListener Наверно можно както выводить сообщение юзеру. А то получается, если сильно ограничить тайм-аут то ктото не усреет доделать работу. Хотя конечно для этого можно просто включить счетчик в ине любом с момента создания обьекта в сессии и просто выдать сообщение перед этим. Через JavaScript можно на онлоад повесить событие с задержкой например за 2 мин до истечения срока действия сессии выводить алерт. Можно через AJAX периодически запросы посылать, чтобы сессия не экспарилась. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 14:04:46 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
osonСпасибо. А как собственно использовать HttpSessionListener Наверно можно както выводить сообщение юзеру. А то получается, если сильно ограничить тайм-аут то ктото не усреет доделать работу. Хотя конечно для этого можно просто включить счетчик в ине любом с момента создания обьекта в сессии и просто выдать сообщение перед этим. Не понял. А что будет, если кто-то просто выключить браузер или компьютер? Я бы сделал так - обработчик события уничтожения сессии, который сохраняет состояние пользователя. Соотвественно, при входе данные восстанавливаются. Если есть желание сохранять данные, которые пользователь только вводит, можно на HTML-страничке поставить таймер, который будет периодически отсылать промежуточную информацию на сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2007, 21:52:47 |
|
||
|
Удаление сессии
|
|||
|---|---|---|---|
|
#18+
max_from_sumy Через JavaScript можно на онлоад повесить событие с задержкой например за 2 мин до истечения срока действия сессии выводить алерт. Можно через AJAX периодически запросы посылать, чтобы сессия не экспарилась. Нужно 2 компонента в одном стакане. 1) Поставить timout на сессию (можно через web.xml, можно и ручками) 2) Создать некий keep_alive запрос. Можно на JavaScript, можно и через hidden frame, который сам себя обновляет так через 1 мин, например. Frame заюзать лучше, мне кажется (я всегда так делаю) потому что он будет в одном месте. А JavaScript нужно на кажную станицу присобачивать ... З.Ы. AJAX - перебор, однако. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 15:58:06 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=656&tid=2146436]: |
0ms |
get settings: |
19ms |
get forum list: |
26ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
67ms |
get topic data: |
20ms |
get forum data: |
6ms |
get page messages: |
79ms |
get tp. blocked users: |
2ms |
| others: | 326ms |
| total: | 561ms |

| 0 / 0 |
