demande.getSession(faux) ne retourne pas null après l'appel de session.invalidate()

Ne devrait pas invalider une session cause request.getSession(false) à retourner la valeur null? Dans ma déconnexion servlet j'appelle

session.invalidate();

et dans mon état de connexion du filtre j'appelle

request.getSession(false);

L'appel à getSession(faux) ne retourne jamais nul, mais tous les attributs associés à la session de l'objet retourné sont nulles. Je suis actuellement détecter si un utilisateur est connecté par la recherche de nulle attributs, mais cela ne semble pas juste.

Il y a peut être quelque chose de bien en cours d'exécution entre les deux (après invalider et avant getsession), qui est la création de la session. Êtes-vous à l'aide de la plaine des servlets ou quelque chose d'autre aussi (spécialement celui qui exige de la session, par exemple à base de composants cadres comme JSF peut être configuré pour enregistrer les etats sur le serveur qui nécessite session)?
Plaine les servlets pas de cadre
Je vais regarder autour et voir si je suis le coupable appelant demande.getSession(true) quelque part.
Comment êtes-vous la navigation à partir de Logout Servlet pour LoginStatus filtre, après l'invalidation de la session?
La déconnexion de la servlet est disponible lorsque vous allez à la "/Déconnexion", mais la déconnexion de filtre d'état des filtres à chaque demande, de sorte que si un utilisateur est connecté et va à la page d'accueil ils voient les membres de la page au lieu de l'écran de connexion. Tout cela fonctionne. Je viens d'être pointilleux sur le fait de tuer une session et pas seulement la dépouillant les attributs, ce qui semble être de toutes les sessions.invalidate ().

OriginalL'auteur Usman Mutawakil | 2013-01-28