Bonjour,
Je développe une appli web et j'ai un problème de session : quand un utilisateur se connecte, je mets un objet "user" (de type User : nom, userid, ...) en session (fichier SignonAction.java):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
... 
request.getSession().setAttribute("USER", user);
...
Mes classes action héritent toutes d'une classe BaseAction.java qui créé une variable de type User :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
User user = (User) request.getSession().getAttribute("USER");
instancié dans la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
Ainsi, je peux théoriquement accéder à l'objet "user" dans toutes mes classes.

Or, il se trouve qu'un utilisateur qui lance un calcul assez long voit ce calcul s'arrêter brutalement ; le fichier de trace indique une erreur de type java.lang.NullPointerException
et la ligne en cause est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
un_autre_objet.setUserid(user.getUserid());
Or il se trouve que cela arrive systématiquement quand une autre personne se connecte, quelle qu'elle soit. Il semblerait que la nouvelle connexion entraine la suppression de l'attribut user de la session du premier utilisateur.

Quelqu'un sait d'où peut provenir le problème ?
Je ne sais pas si cela a un rapport, mais cette appli a été réinstallée plusieurs fois, et dernièrement sur un nouveau serveur, et il me semble que depuis le JSESSIONID n'apparait plus dans l'url. Est-ce normal ? Est-ce lié ?

Merci infiniment pour votre aide.