com.солнце.сталкиваться.enableRestoreView11Compatibility что использовать вместо JSF 1.2
когда у меня есть javax.сталкиваться.приложение.ViewExpiredException я хочу отправить пользователя на страницу входа.
web.в XML
...
<context-param>
<param-name>com.sun.faces.enableRestoreView11Compatibility</param-name>
<param-value>true</param-value>
</context-param>
...
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/errors/sessionExpired.jsf</location>
</error-page>
sessionExpired.в JSF
....
<c:redirect url="/index.jsf" />
но enableRestoreView11Compatibility-это метод, который использовался в JSF 1.1, Что такое решение для JSF 1.2?
1 ответов
com.sun.faces.enableRestoreView11Compatibility
- Это параметр JSF 1.2, который говорит JSF 1.2 вести себя как JSF 1.1.
com.sun.faces.enableRestoreView11Compatibility
==true
означает "не бросайте ViewExpiredException
; вместо этого, просто создайте новое представление, если старый истек."
на IBM notes на поведении JSF 1.1 скажите:
это может иметь неблагоприятное поведение, потому что это новое представление, и элементы, которые обычно находятся в представлении, такие как состояние, больше не существуют.
в поведение JSF 1.2 по умолчанию определяется в спец а это:
если запрос является обратным, называют
ViewHandler.restoreView()
, передаетFacesContext
экземпляр для текущего запроса и идентификатора представления и возвратUIViewRoot
для восстановленного зрения. Если возвращение изViewHandler.restoreView()
равно null, бросьтеViewExpiredException
С соответствующим сообщением об ошибке. класса javax.сталкиваться.приложение.ViewExpiredExceptionis a
FacesException', который должен быть брошен, чтобы сигнализировать приложению, что ожидаемое представление не было возвращено для идентификатора представления. Приложение может выбрать выполнение некоторых действий на основе этого исключения.
иметь ViewExpiredException
брошен, когда истекает срок действия представления,удалить com.sun.faces.enableRestoreView11Compatibility
параметр, либо false
.
на com.sun
пространство имен предполагает, что параметр является настройкой Sun/Mojarra и производной реализацией, поэтому он, вероятно, не будет работать со всеми JSF реализации.