Влияет ли область действия JSF Managed Bean на видимость и доступ между EAR, WAR и JAR

У меня есть EAR, в котором WAR и несколько банок. В конце концов, еще несколько JARS под моей WAR тоже.

Я упаковал набор ОБЪЕКТОВ ДАННЫХ в EAR как JAR, из которых один из его Управляемого компонента находится под 'SessionScope' и со своим свойством -> 'eager = true'. Скажи "А.Ява"

Теперь из моей WAR у меня есть ManagedBean, скажем "B.java", с "RequestScope", пытающимся получить экземпляр A.java, который возвращается как NULL. Из журналов, когда трассировка получила следующее исключение:

The managed-bean with name 'B' must be application scoped to support eager=true.

Существует ли иерархия области управляемых компонентов, которую мы должны обеспечить при архивировании и развертывании как EAR???

1 ответ

Готовые к применению бобы

Управляемые бобы лениво создаются. Это означает, что они создаются при выполнении запроса из приложения.

Чтобы заставить экземпляр компонента в области приложения создаваться и помещаться в область приложения сразу после запуска приложения и перед выполнением любого запроса, для атрибута eager управляемого компонента следует установить значение true, как показано в следующем примере:

@ManagedBean(eager=true)
@ApplicationScoped

eager свойство означает, что контейнер создает экземпляр при запуске приложения, а не по требованию. Он может поместить этот экземпляр только в область приложения. (В настоящее время нет других областей применения). Таким образом, нетерпеливо созданные управляемые бины должны быть ApplicationScoped,

Другие вопросы по тегам