[RequestProcessor] méthode process : request, session ou les deux?
Bonjour à tous,
Voici le contenu de la méthode process de mon requestProcessor :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
CezarInfosUtilisateurFonctionnel user = (CezarInfosUtilisateurFonctionnel)session.getAttribute("user");
if (user != null) {
// Le user s'est conncete prealablement, maj de la ThreadLocal
CezarSecuriteFonctionnelleManager.setInfosUser(user);
}
else {
// Récuperation du UserPrincipal instancié par le mecanisme std
java.security.Principal principal = request.getUserPrincipal();
String userName = principal.getName();
// Appel du service d'authentification
user = CezarSecuriteFonctionnelleManager.login(userName);
// Mise a jour la session HTTP + ThreadLocal
session.setAttribute("user",user);
CezarSecuriteFonctionnelleManager.setInfosUser(user);
}
}
} |
Seulement voila, que dois-je passer en paramètre à ma méthode?
Je pensais écrire cela :
Code:
1 2 3
| protected void process(HttpServletRequest request,HttpSession session,
HttpServletResponse response, ForwardConfig forward)
throws IOException, ServletException { |
mais je ne suis pas du tout convaincue de cette écriture vu qu'elle mélange request et session.
Pouvez-vous m'aider svp?
Merci d'avance
service d'authentification et thread
Merci beaucoup pour ta réponse, je ne savais pas que le controle se faisait directement ici;)
Par contre, j'ai un souci concernant l'appel du service d'authentification.
En effet, ma classe CezarSecuriteFonctionnelleManager (appartenant à la couche métier) contient seulement un thread, un getter et un setter, et ne prend pas en compte la request.
Avant, on faisiat appel à une classe de la couche présentation, appelée CezarSecuriteManager, qui contient une méthode qui prend en compte la notion de request, voici son prototypage :
Code:
public CezarInfosUtilisateur getInfoUtilisateur(HttpServletRequest requete) throws TechniqueException
Est-il envisageable de créer une méthode login en reprenant cette méthode dans ma classe contenant le thread pour garder cette notion de request???
Pouvez-vous m'aider,svp?C'est assez difficile pour moi d'autant plus que je maitrise assez mal struts:?
Merci d'avance,