J'utilise Seam 2.2.1.CR1 sur Weblogic 10.3.2 et JSF 1.2.Seam & plusieurs guerres: Contexts.getSessionContext() est null dans l'autre guerre
J'ai une application d'oreille avec 2 fichiers war. La première guerre est une application JSF/Seam, la seconde a JSF/Seam, mais aussi quelques pages Servlets.
Quand je tournerai les choses dans le contexte de la session dans la première application web:
Contexts.getSessionContext().set("pimUser", pimUser);
je peux injecter normalement dans les composants Seam dans la deuxième guerre. Cependant, si je tente d'obtenir le pimUser outjected d'un Servlet, je ne peux pas y accéder:
PimUser user1 = (PimUser) Contexts.getSessionContext().get("pimUser");
Le Contexts.getSessionContext() est nulle. J'ai remarqué que la Javadoc du
org.jboss.seam.contexts.Contexts
dit:
Provides access to the current contexts associated with the thread.
Auteur (s): Gavin King Thomas Heute
Est-ce que cela veut dire que les 2 fichiers de guerre sont censés avoir différents Contexts.getSessionScope()
?
je trouve une façon qui ne me permet d'y accéder par la session comme ceci:
PimUser user2 = (PimUser) httpRequest.getSession().getAttribute("pimUser");
Cette dernière façon, ne semble toutefois pas être correcte. Je voudrais accéder au contexte de la session Seam à travers Seam.
J'ai trouvé qu'il y avait (?) Problème avec les applications Seam et multi-war (link), cependant, elles sont supposées avoir été résolues par 2.2.0.GA.
JEE 5 Le didacticiel indique: Vous pouvez associer des attributs à valeur d'objet à une session par nom. Ces attributs sont accessibles par tout composant Web ** appartenant au même contexte Web ** et gère une requête faisant partie de la même session. Les deux guerres (Vous pouvez considérer la guerre comme un contexte Web) ne partagent pas leurs contextes. –