Я использую 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() имеет значение null. Я заметил, что 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 (ссылка), однако , предполагается, что они были разрешены в версии 2.2.0.GA.