Шве Scoped Component исчезает в следующем запросе
-
08-10-2019 - |
Вопрос
У меня есть компонент Scoped Session-Session, Customidentitality, который переопределяет стандартную идентичность шва (также Session-Scope). Удлиненное Shamsidentity имеет свойство
@Out(required=false, scope=ScopeType.SESSION)private User user
В логине переопределения () я определяю объект пользователя, заполненный информацией от принципала HTTPServletRequest. В первом запросе в приложении пользовательский объект является представлением, как и ожидалось в области сеанса. Однако во втором запросе пользовательский объект исчез из сеанса, и когда я посещаю страницу, которая вводит ее, я получаю исключение.
Мой вопрос, когда именно компонент был назначен:
- После каждого и каждого способа компонента Customidentity (даже если он не содержит ссылки на
user
)? - После каждого метода, который содержит ссылку на пользовательский компонент?
И о required
атрибут:
- Если при откровении объект пользователя оценивает
null
, Уже был удален уже был удален из сеанса?
Ваше здоровье!
Решение
К вашим первым вопросам: компонент отказывается после каждого метода CustomIdentity
. Отказ Посмотрите на соответствующий исходный код шва org.jboss.seam.core.BijectionInterceptor
(Шов 2.2.0). Biection имеет место на компоненте, т. Е. Класс, уровень.
На ваш второй вопрос: каждый раз просьба CustomIdentity
Отделка, стоимость вашего поля является представлением. Если вы используете объекционный собственность require=false
, то user
в настоящее время в данный момент в вашем контексте сеанса может быть переопределен null
.