Assemblage permettant le partage des données de session
Par défaut, l'utilitaire de gestion de session prend en charge la configuration de portée des sessions par module Web, conformément à la spécification d'API Servlet 2.3 et aux versions suivantes. Seuls les servlets d'un même module Web peuvent accéder aux données associées à une session particulière. Toutefois, vous pouvez utiliser l'objet IBMApplicationSession ou l'extension IBM®, contexte de session partagé, pour partager des données hors de portée du module Web.
Pourquoi et quand exécuter cette tâche
L'objet IBMApplicationSession est un objet parent qui peut être extrait par une session du module Web et peut partager des attributs de session entre tous les modules Web dans une application de niveau métier. La portée par défaut de l'application de niveau métier est l'application d'entreprise. L'option contexte de session partagé étend également la portée des attributs de session. Lors de l'utilisation de l'extension de contexte de session partagé, il n'y a qu'un objet de session pour toute l'application de niveau métier ou pour l'application d'entreprise par défaut.
Si vous utilisez une session partagée pour une application de niveau métier, les fichiers classe de tous les objets placés dans la session doivent exister dans une bibliothèque partagée isolée et être communs à toutes les applications.
L'avantage de la méthode IBMApplicationSession est que chaque module Web peut gérer sa propre session et posséder une référence à la session partagée.
Avec cette méthode, si vous faites migrer une application provenant d'une version précédente du produit, il faut modifier la logique applicative de l'application.
Pour les applications d'entreprise sur lesquelles cette extension de contexte de session partagée est activée, la configuration de la gestion de session sur le module Web dans une application d'entreprise est ignorée. Ensuite, la configuration de gestion de session définie sur une application d'entreprise est utilisée si la gestion de session est remplacée au niveau de l'application d'entreprise. Autrement, la configuration de la gestion de session dans le conteneur Web est utilisée. Si vous utilisez des applications d'entreprise multiples sur une application de niveau métier, la configuration de la gestion de session doit être la même pour toutes les applications et les modules Web sur cette application de niveau métier.
Les programmes d'écoute HttpSession définis dans tous les modules Web dans l'application de niveau métier ou l'application d'entreprise sont appelés pour les événements de session. L'ordre dans lequel les modules d'écoute sont appelés n'est pas garanti.Pour partager les données des sessions dans toute l'application de niveau métier, procédez comme suit.