Я использую Seam 2.2.1.CR1 в Weblogic 10.3.2 и JSF 1.2.
У меня есть приложение на ухо с двумя военными файлами. Первая война - это приложение JSF / Seam, вторая - с JSF / Seam, но также с несколькими страницами сервлетов.
Когда я устанавливаю вещи в контексте сеанса в первом веб-приложении:
Contexts.getSessionContext().set("pimUser", pimUser);
Я могу добавить его в компоненты Seam во время второй войны. Однако, если я пытаюсь получить отключенный pimUser от сервлета, я не могу получить к нему доступ:
PimUser user1 = (PimUser) Contexts.getSessionContext().get("pimUser");
Contexts.getSessionContext () является нулевым. Я заметил, что Javadoc
org.jboss.seam.contexts.Contexts
Говорит:
Provides access to the current contexts associated with the thread.
Автор (ы): Гэвин Кинг Томас Хьют
Значит ли это, что 2 файла войны должны иметь разные Contexts.getSessionScope()
?
Я нашел способ, который позволяет мне получить к нему доступ через сеанс, например:
PimUser user2 = (PimUser) httpRequest.getSession().getAttribute("pimUser");
Последний способ, однако, не кажется правильным. Я хотел бы получить доступ к контексту сеанса Seam через Seam.
Я обнаружил, что раньше (?) Возникали проблемы с приложениями Seam и multi-war ( link ), однако предполагается, что они устранены в 2.2.0.GA.