Dans le cas ou une application Web authentifie ses utilisateurs via une page contenant une formulaire j_security_check définie dans le web.xml de la manière suivante :
<login-config> <auth-method>FORM</auth-method> <form-login-config> <form-login-page>/security/login.jsp</form-login-page> <form-error-page>/security/error.jsp</form-error-page> </form-login-config> </login-config>
Si la session HTTP est invalidée par un timeout, il n'est pas possible de se reconnecter à l'application (ré-afficher la page de login) suite au déclenchement d'un événement Ajax.
Cela a été corrigé dans la fiche 5786 (intégrée en V12 PTF 1 FIX 4).
Si vous êtes dans une version précédente, il faut rajouter une balise META dans la page de login (la page déclarée dans le noeud <form-login-page> du web.xml) comme suit :
<HTML> <head> <meta name="AWSFormAuthLog" content="pagePointEntree.jsp"> </head> <body > <form method=post action="j_security_check" > Nom d'utilisateur : <input type="text" name= "j_username" id="j_username"/><br/> Mot de passe : <input type="password" name= "j_password"/><br/> <input type="submit" name="login" value="login"/> </form> </body> </HTML>
L'attribut "content" doit contenir l'url de la page d'entrée de l'application Web. Par exemple, cette page peut être la même que celle définie dans la paramètre SESSION_EXPIRED_PAGE du fichier de configuration CfgConfiguration.properties.
Note : Si l'authentification est basique (utilisation de la boîte de connexion native du navigateur définie par <auth-method>BASIC</auth-method> dans le web.xml), la reprise de session HTTP via un événement Ajax fonctionne correctement.
Articles connexes