Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по jsf и primefaces / 15 сообщений из 15, страница 1 из 1
09.08.2017, 13:02
    #39502521
olegeos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
Всем добрый день.
Есть какой-то командный элемент, к примеру CommandLink с включенным ajax=true. По нажатию на странице что-то обновляется.
Все работает, но если время сессии истекло, а страница в браузере открыта, то сколько не клацай ничего не происходит (в лучшем случае вылетает эксепшн).
Если сменить в атрибутах на ajax=false и actionListener на action, то проблема уходит. Однако это перезагружает каждый раз страницу, что мне не нравиться.

Советы/идеи?(кроме не использовать jsf %)
...
Рейтинг: 0 / 0
09.08.2017, 13:04
    #39502524
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
olegeos...но если время сессии истекло, а страница в браузере открыта, то сколько не клацай ничего не происходит (в лучшем случае вылетает эксепшн)....

Советы/идеи?
увеличить время жизни сессии
...
Рейтинг: 0 / 0
09.08.2017, 13:07
    #39502525
olegeos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
Можно и сработает. А еще есть варинаты?
...
Рейтинг: 0 / 0
09.08.2017, 13:18
    #39502534
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
olegeos,

внутри jsf можно отлавливать какое-то исключение, которое возникает когда сессия истекла и соответственно что-то делать
...
Рейтинг: 0 / 0
09.08.2017, 13:21
    #39502538
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
...
Рейтинг: 0 / 0
09.08.2017, 13:25
    #39502544
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
rema174olegeos,

внутри jsf можно отлавливать какое-то исключение, которое возникает когда сессия истекла и соответственно что-то делать
как-то есть у меня в этом ОГРОМНОЕ сомнение
т.к. если сессия истекла, серверную обработку убили, что там отлавливать?
timeout для сессии для этого и нужен

если же timeout не нужен, то просто отключить его

чисто теоретически, должна быть еще куча проблем связанных с авторизацией и секьюрити. Т.к. если бы стояла авторизация, то не факт, что сессия смогла бы заново "по тихому" создаться и при отсутствие ajax'а. Т.ч. ajax тут вообще не при чем

IMHO & AFAIK
...
Рейтинг: 0 / 0
09.08.2017, 13:50
    #39502566
olegeos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
Добавил в web.xml
Код: xml
1.
2.
3.
4.
 <error-page>
        <exception-type>javax.faces.application.ViewExpiredException</exception-type>
        <location>/index.xhtml</location>
   </error-page>


с расчетом на возврат главной страницы, но пока не работает.
...
Рейтинг: 0 / 0
09.08.2017, 13:56
    #39502572
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
PrimeFaces -- это jQuery в браузере. У jQuery можно повешать глобальный обработчик на AJAX и ловить ситуацию с ошибкой. Вроде видел компонент в Primefaces Extensions для этого. Или, может, они уже к себе его перетянули.
...
Рейтинг: 0 / 0
09.08.2017, 13:58
    #39502576
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
...
Рейтинг: 0 / 0
09.08.2017, 22:26
    #39502963
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
В принципе, таймаут-таймауту рознь.
1. клиент закрыл браузер или браузер сломался
2. человек забил нано-болт, ушел пить кофе, а браузер открыт

что бы избежать таймаута во втором случае, может быть просто на страничку java script таймер повесить и раз в 5-10 минут дергать сервер по ajax'у

хотя, более правильно, применять организационные меры

IMHO

обработка ошибок и восстановление сессии мне кажется плохой идеей. Т.к. совершенно не понятно, что делать с авторизацией

> в лучшем случае вылетает эксепшн

по хорошему, он все время должен появляться. Дебажить страничку, смотреть, где теряется ошибка. Как это сделать - я не знаю

IMHO
...
Рейтинг: 0 / 0
10.08.2017, 08:39
    #39503058
olegeos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
В гугле советуют добавить в web.xml
Код: xml
1.
2.
3.
4.
<context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
    </context-param>


И это помогает, другой вопрос насколько безопасно так делать.
...
Рейтинг: 0 / 0
10.08.2017, 08:56
    #39503067
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
авторчто бы избежать таймаута во втором случае, может быть просто на страничку java script таймер повесить и раз в 5-10 минут дергать сервер по ajax'у
Это какой-то костыль.
...
Рейтинг: 0 / 0
10.08.2017, 09:15
    #39503077
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
Hettавторчто бы избежать таймаута во втором случае, может быть просто на страничку java script таймер повесить и раз в 5-10 минут дергать сервер по ajax'у
Это какой-то костыль.стесняюсь спросить, а что не костыль?
...
Рейтинг: 0 / 0
10.08.2017, 09:25
    #39503087
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
am_sasaHettпропущено...

Это какой-то костыль.стесняюсь спросить, а что не костыль?
Выводить пользователю ошибку (редиректить на страницу логина), например.
Если связь потеряется или редеплой будет выполнен сессия все равно закроется.
...
Рейтинг: 0 / 0
10.08.2017, 09:37
    #39503109
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по jsf и primefaces
HettВыводить пользователю ошибку (редиректить на страницу логина), например.
Если связь потеряется или редеплой будет выполнен сессия все равно закроется. а, ну да, только это не для авторчто бы избежать таймаута а сообщение о таймауте
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по jsf и primefaces / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]