Probleme avec request.getRequestDispatcher()

Probleme avec request.getRequestDispatcher() - Java - Programmation

Marsh Posté le 16-02-2005 à 14:09:15    

Bonjour,
 
J'ai un petit souci avec mes redirections d'une servlet vers une page jsp.
 
Je vais essayer d'etre claire !
 
Donc : j'ai une servlet dans laquelle j'ajoute un attribut à ma requete : request.setAttribute ("NomPageJSP", "mapage.jsp" );
 
Une fois cet attribut ajouté, je veux faire passer cette requete actualisée à ma page JSP :
 
request.getRequestDispatcher("/jsp/test/page_principale.jsp" ).forward(request, response);
 
En fait ma JSP "page_principale" contient plusieurs "cadres" (un entête, un pied de page, un menu sur la gauche et une partie dynamique pour le contenu de la page). Pour chaque partie "page_principale" fait appel à une JSP. L'attribut que j'ai ajouté dans ma requete est le nom de la page qui représente le contenu "dynamique" à afficher.
 
Mon probleme est le suivant : j'arrive bien a faire afficher ma JSP "page_principale" avec le bon contenu, mais le probleme c'est qu'il ne prend plus en compte la CSS associée à cette JSP.
 
Si j'utilise un "sendRedirect" il m'affiche la page JSP avec la mise en forme mais du coup ca veut dire que ma variable "NomPageJSP" doit etre stockée en session et plus dans la requete puisque la requete n'a pas été mise à jour et que donc je ne peux récuperer l'attribut depuis ma JSP.
Disons que j'avais lu un sujet sur ce meme forum ou quelqu'un disait qu'il valait mieux privilégier le "dispatcher" au "sendRedirect" (pour des questions d'aller-retours entre client et serveur me semble-t-il ...ou quelque chose comme ca, je n'arrive pas à remettre la main dessus !).
 
Donc voilà, je remercie par avance ceux qui pourront m'aider.
Sinon tant pis je passerai via ma session et un sendRedirect.
 
A.B

Reply

Marsh Posté le 16-02-2005 à 14:09:15   

Reply

Marsh Posté le 16-02-2005 à 14:17:26    

L'accès a la CSS est un chemin relatif ou absolu ?
S'il est relatif tente en absolu...
Je dit peut-être une connerie...
 
Mais il me semble avoir déjà eu un problème de ce genre, mais je ne me souvient plus trop...

Reply

Marsh Posté le 16-02-2005 à 14:35:30    

quand tu fais un dispatch, faut pas oublier que pour le client l'url ne change pas => tous les liens relatifs à la page seront relatifs par rapport à l'url à laquelle il a accédé "en premier". Toi, si tu dispatch à un jsp qui se trouve dans un autre rep, il faut que cette JSP gère ce problème.
2 solutions :  
- tout mettre en absolu genre: <img src="<%=request.getContextPath()%>/img/toto.jpg" />
- rester en relatif mais prendre en compte le fait que les chemins relatifs ne se font pas en fonction de la position de la jsp sur le serveur, mais de l'url accédée par le client


Message édité par benou le 16-02-2005 à 15:27:00

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 16-02-2005 à 14:57:55    

Merci à tous les 2.
 
Ca marche beaucoup mieux avec les chemins en absolu  ;)  
 
A.B

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed