2010-10-05 9 views
2

Je rencontre des problèmes en Java lors de la gestion des sessions. Tout fonctionne parfaitement (je crée et obtient/fixe des valeurs dans la session), jusqu'à ce que je redirige avec un lien (le lien est dans une JSP). Ensuite, la session est perdue.Java: Je perds la session: Serait-ce un problème d'utiliser "<a href >"?

Mon serveur est Tomcat et mon navigateur est un navigateur Firefox. J'utilise Struts 2.

Merci pour votre temps ;-)

+1

ajoutez-vous l'ID session dans l'URL? –

+0

Je ne le fais pas. -newbie ;-p – raspayu

+0

Mais ne l'a pas fonctionné avec les balises s: a ou s: url? – raspayu

Répondre

2

L'heure standard pour l'effacement automatique de la session est d'environ 30 minutes (par exemple dans Tomcat), mais cela dépend de la configuration.

Si vous écrivez session.invalidate(), votre session sera également effacée.

Votre session est automatiquement perdue si vous fermez tous les onglets du navigateur dans lequel vous avez ouvert la session (même si vous avez d'autres fenêtres avec le même navigateur).

Votre lien se trouve-t-il dans le même serveur d'applications? Si c'est le cas, il ne devrait pas être perdu si vous ne faites pas les choses que j'ai dites auparavant.

+0

Merci, c'était kinf de problème de lien ;-) – raspayu

1

Si vous acceptez les cookies dans votre navigateur, votre code peut appeler invalidate() quand vous allez sur cette page. Vérifiez les filtres aussi.

1

Il est possible que votre cookie de session actuel soit marqué comme "sécurisé" et que "href" soit un lien "http:". Cela empêchera le navigateur d'envoyer le cookie et, en fonction de la structure de votre webapp, une nouvelle session pourra être créée automatiquement.

+0

Ouais, c'est ce que je pensais, mais là mes collèges me disent que, en utilisant la balise ou dans le jsp il ne devrait pas poser de problèmes. Y a-t-il une autre raison possible? – raspayu