OVH Cloud OVH Cloud

taglibs et RequestDisptacher

2 réponses
Avatar
Gabriel
Bonsoir,

J'ai un souci avec un taglib :
il doit écrire "toto" mais s'il n'y parvient pas (il recupere une valeur
nulle par ex), je lui fais récuperer le contexte, la request, la
response et je transmet à un RequestDispatcher qui va faire le forward
vers une page jsp erreur.

Est-ce autorisé et correct comme méthode ?

if (session == null){
outils.Utilitaires.messageDebug("Session expirée");
// La session a expiré
Utilitaires.redirecteurErreur("sessionExpire", request,
response);
return EVAL_PAGE;
}


public static void redirecteurErreur(String motif, HttpServletRequest
request, HttpServletResponse response){

String url = "controller?event=ERROR_EVENT&erreur=" + motif;
outils.Utilitaires.messageDebug("Dispatch de l'erreur vers : "
+ url);
RequestDispatcher rd = request.getRequestDispatcher(url);
outils.Utilitaires.messageDebug("rd : " + rd.toString());

try {
outils.Utilitaires.messageDebug("erreur deleguee !!");

rd.forward(request, response);

}
// Là, tout est perdu !!
catch (ServletException e) {
e.printStackTrace();
}
catch (IOException e) {

e.printStackTrace();
}

}

Le pb de ce code est qu'il ne forwarde pas vers la jsp alors que "erreur
deleguee !!" s'affiche correctement dans ma console donc le forward
devait se faire.
request et response ne sont pas nuls.

Des idées ?

Merci d'avance !

2 réponses

Avatar
Gabriel
Je repose ma question, en plus clair :) :

Est-il possible à partir d'un tag d'utiliser un RequestDispatcher qui
renverrait vers une autre page jsp (en cas de pb lors de la génération
du tag par ex) ?

Merci si qqun a des infos !
Avatar
Gabriel
Bon j'ai trouvé, la réponse est oui :)