У меня есть страница входа, которая не защищена и доступна через различные навигационные окна.Избегайте ViewExpiredException в JSF 1.2 на одной странице
Проблема: многие пользователи получают доступ к этой странице входа и оставляют ее открытой на некоторое время, а затем снова регистрируются. Boom! Возникает ужасное ViewExpiredException! Я бы хотел, чтобы исключение ViewExpiredException позволяло им снова войти в систему. Мне не нужен обходной путь для всех просмотров, но только знак на странице.
Я не могу перейти на JSF2 (по причинам бюджета).
У меня есть такая конфигурация:.
javax.faces.STATE_SAVING_METHOD = server
, что я не могу изменить (у нас есть ограниченные пропускные и механизмы, которые блокируют HTTP-запроса больше, чем небольшая страница формы с очень ограниченными полями ввода
Любая идея?
Если вы используете Mojarra (не MyFaces), вы можете настроить его только для всего приложения (не одной страницы), установив для параметра context 'com.sun.faces.enableRestoreView11Compatibility' значение' true'. Это приемлемо? – BalusC
Ну, может быть! Что произойдет на других страницах, когда срок действия представления истек? Получу ли я опыт «WTF», как вы сказали в предыдущем посте? – pmartin8
Только если вы полагаетесь на состояние области просмотра, но в JSF 1.x «область видимости» уже не существует как область управляемых компонентов. Если вы используете что-то вроде Tomahawk's, чтобы сравнить область просмотра JSF 2.x, то это может закончиться «WTF», потому что бит, на который ссылается , будет реконструирован с нуля вместо повторного использования, когда время истекает (так что вместо этого страницы с ошибкой, вы получаете новый новый bean-компонент) –
BalusC