JSP Redirection Automatique Après la Session Expire/Timeout
Est-il un moyen de détecter le délai d'expiration de session, sans (interaction avec l'utilisateur)*, et le rediriger vers une page; c'est à dire si il n'y a pas d'activité sur la page @ spécifiques de la durée; server le détecte et le rediriger automatiquement sur certains autres.
Par l'utilisateur de l'interaction de l'utilisateur, je veux dire; il y a un moyen de détecter le délai d'expiration de session lorsque l'utilisateur clique sur quelque chose, alors de la demande est transmise au serveur et le serveur vérifie si la session de l'utilisateur actuel est expiré ou n'est pas.
Ce dont j'ai besoin ici, c'est que nous n'avons pas d'informer le serveur de rien (ou que nous n'avons pas d'effectuer une action), mais lors de la session expire le serveur détecte automatiquement et effectuer les actions nécessaires.
Grâce,
Raza
OriginalL'auteur user473445 | 2010-10-12
Vous devez vous connecter pour publier un commentaire.
Vous pouvez bien sûr faire une telle chose en JavaScript par la mise en œuvre d'un document à l'échelle du clavier et /ou souris d'auditeur et d'une revue de la méthode avec un délai d'attente.
maintenant vos auditeurs suffit de définir lastActivity à l'heure actuelle sur chaque action.
Sur la re-lecture de la question, vous voulez utiliser le délai d'expiration de session, de l'application serveur. C'est une question difficile, parce que votre lorsque vous envoyez une requête ajax vers le serveur vous fait garder la session n'expire (sauf si il y a une limite), donc, ma réponse peut-être encore la meilleure façon de le faire.
merci, j'ai vraiment besoin de cette chose, d'ailleurs j'ai aussi trouvé de lien sur le même site stackoverflow.com/questions/1985250/...
OriginalL'auteur Sean Patrick Floyd
Si l'exigence est de rediriger vers la page de connexion (ou toute autre page)
après la session a expiré, c'est la façon dont j'ai essayé de la mettre en œuvre:
Inclure les éléments suivants scriptlet à TOUTES les pages qui nécessite une connexion
De cette façon, une page qui nécessite la connexion d'actualisation/redirection de connexion.jsp (changer votre url souhaitée) après la session a expiré
OU (pour éviter de manquer des pages)
Vous pouvez réellement écrire dans un fichier séparé (timedoutRedirect.jsp) et de l'inclure en tant que
un en-tête de toutes les pages qui nécessite une connexion à l'aide de "JSP propriété de groupe" (dans web.xml)
(vous pourriez avoir à ajuster le prélude d'url pour les spécifications de votre projet)
OriginalL'auteur Jimmy Leo
J'ai eu un peu le même problème donc voici comment je l'ai résolu...
Fondamentalement, j'ai créé un minuteur de session côté client avec javascript. J'ai envoyer un appel ajax régulièrement (sur une minuterie, ce qui est inférieur au délai d'expiration du serveur de configuration), pour la garder active sur le serveur.
Puis j'ai créé un autre compte à rebours sur le côté client (réglés à la même heure que le serveur réel paramètre de délai d'attente). Si ce délai expire, alors un appel ajax est fait pour le serveur qui exécute session.invalidate() et les transmet ensuite à la page de connexion. Ce compteur est remis à zéro chaque fois qu'il ya certaines mesures que devrait la garder active (c'est à dire clic de souris, keypress, etc.)
OriginalL'auteur malificent