Cette question est liée à mon autre question "How to redirect to Login page when Session is expired in Java web application?". Voici ce que je suis en train de faire:Gestion de 'session expirée' dans l'application Web JSF, s'exécutant dans JBoss AS 5
- J'ai une application Web JSF en cours d'exécution sur JBoss AS 5
- Lorsque l'utilisateur est inactif pendant, disons 15 minutes, je dois déconnecter l'utilisateur et le rediriger vers la page de connexion, s'il essaie d'utiliser l'application après l'expiration de la session. Par conséquent, comme suggéré dans 'JSF Logout and Redirect', j'ai implémenté un filtre qui vérifie la condition d'expiration de la session et redirige l'utilisateur vers une page session-timed-out.jsp, si la session a expiré.
- J'ai ajouté SessionExpiryCheckFilter au-dessus de toutes les autres définitions de filtre dans web.xml, de sorte que mon contrôle d'expiration de session reçoive toujours le premier hit.
Maintenant vient le défi auquel je fais face. Comme j'utilise JBoss AS, lorsque la session a expiré, JBoss me redirige automatiquement vers la page de connexion (notez que le filtre de vérification d'expiration de session n'est pas appelé). Ainsi, après que je me connecte, mon SessionExpiryCheckFilter intercepte la demande, et il voit qu'une session est disponible. Mais, il jette l'exception javax.faces.application.ViewExpiredException: viewId:/mypage.faces - View /mypage.faces could not be restored.
Avez-vous déjà rencontré ce problème? Des idées pour résoudre ce problème?
Utilisez-vous Seam? –
Non. Je n'utilise pas Seam. – Veera
Utilisez-vous des Facelets ou des JSP? – mtpettyp