Code source wiki de Reprise d'une session HTTP invalidée par un timeout sur un événement Ajax dans une application Web ayant une autentification des utilisateurs via un formulaire j_security_check
Modifié par Julien EYMERY le 2015/06/29 16:00
Masquer les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
| |
1.1 | 1 | 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 : |
| 2 | |||
| 3 | |||
| 4 | {{code language="xml" language="xml"}} | ||
| 5 | <login-config> | ||
| 6 | <auth-method>FORM</auth-method> | ||
| 7 | <form-login-config> | ||
| 8 | <form-login-page>/security/login.jsp</form-login-page> | ||
| 9 | <form-error-page>/security/error.jsp</form-error-page> | ||
| 10 | </form-login-config> | ||
| 11 | </login-config> | ||
| 12 | {{/code}} | ||
| 13 | |||
| 14 | |||
| 15 | |||
| 16 | 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. | ||
| 17 | Cela a été corrigé dans la fiche 5786 (intégrée en **V12 PTF 1 FIX 4**). | ||
| 18 | |||
| 19 | 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 : | ||
| 20 | |||
| 21 | |||
| 22 | |||
| 23 | {{code language="none"}} | ||
| 24 | <HTML> | ||
| 25 | <head> | ||
| 26 | <meta name="AWSFormAuthLog" content="pagePointEntree.jsp"> | ||
| 27 | </head> | ||
| 28 | <body > | ||
| 29 | <form method=post action="j_security_check" > | ||
| 30 | Nom d'utilisateur : <input type="text" name= "j_username" id="j_username"/><br/> | ||
| 31 | Mot de passe : <input type="password" name= "j_password"/><br/> | ||
| 32 | <input type="submit" name="login" value="login"/> | ||
| 33 | </form> | ||
| 34 | </body> | ||
| 35 | </HTML> | ||
| 36 | {{/code}} | ||
| 37 | |||
| 38 | |||
| 39 | |||
| 40 | 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. | ||
| 41 | |||
| 42 | |||
| 43 | 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. | ||
| 44 | ((( | ||
| 45 | == | ||
| 46 | Articles connexes == | ||
| 47 | ))) | ||
| 48 | |||
| 49 | Les articles connexes apparaissent ici en fonction des étiquettes que vous avez sélectionnées. Cliquez pour modifier la macro et ajouter ou modifier des étiquettes. | ||
| 50 | |||
| 51 | {{liveData sort="doc.date:desc" source="liveTable" properties="doc.title,doc.date,doc.author" description="Recently updated" limit="5" filters="tag=web ajax" sourceParameters="translationPrefix=platform.index."}}{{/liveData}} | ||
| 52 | |||
| 53 |