[Servlet/JSP] Pas de "request" définie ds ma JSP

Pas de "request" définie ds ma JSP [Servlet/JSP] - Java - Programmation

Marsh Posté le 05-10-2002 à 10:43:14    

Dans mon servlet, j'attribue un paramètre à ma requête puis je la fait suivre à une page JSP:
 

Code :
  1. class ListeDestinataires extends HttpServlet (HttpServletRequest, req, HttpServletResponse res) ...
  2. {
  3. req.setAttribute ("lesDestinataires", recupDestinataires());
  4. res.sendRedirect("/MaPage.jsp" );
  5. }


 
 
Ma page jsp s'ouvre mais impossible de récupérer les attributs. En fait l'objet "request" n'existe pas... Impossible donc d'utiliser ma requête.
 
Merci de votre aide  :)


Message édité par Zeplusoif le 05-10-2002 à 10:45:43

---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Marsh Posté le 05-10-2002 à 10:43:14   

Reply

Marsh Posté le 05-10-2002 à 12:28:49    

d'abord l'objet request exist forcément dans une JSP.
 
ensuite, pour pouvoir passer la request a une JSP il faut faire un requestDispatcher, pas un send Redirect. Le sendRedirect va envoyé un message de redirection au client qui va créer une nouvelle requête donc c'est normal que l'attribut que tu as mit dans la request n'y soit plus : c'est plus la même

Reply

Marsh Posté le 05-10-2002 à 12:41:47    

benou a écrit a écrit :

d'abord l'objet request exist forcément dans une JSP.
 
ensuite, pour pouvoir passer la request a une JSP il faut faire un requestDispatcher, pas un send Redirect. Le sendRedirect va envoyé un message de redirection au client qui va créer une nouvelle requête donc c'est normal que l'attribut que tu as mit dans la request n'y soit plus : c'est plus la même




 
Merci bocou   [:youyou2224]  
 
Ds ma JSP g fait ça pour tester l'objet request :
 

Code :
  1. HttpServletRequest req = request;


 
Message d'erreur : la variable request n'est pas définie.


---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Marsh Posté le 05-10-2002 à 12:44:58    

c'est bizare ...  
 
c'est bien dans un bloc d'instruction que tu l'as fait ? pas dans unbloc de déclaration ?

Reply

Marsh Posté le 05-10-2002 à 12:47:46    

benou a écrit a écrit :

c'est bizare ...  
 
c'est bien dans un bloc d'instruction que tu l'as fait ? pas dans unbloc de déclaration ?




 
Ah g fait ça ds un bloc de déclaration. Il faut pas?
 
Sorry je débute en jsp


---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Marsh Posté le 05-10-2002 à 12:59:59    

ben non il faut pas ... l'objet request, c'est une requete. Et ta JSP est executée quand elle reçoit une requête.
 
Tu dervais vraiment te documenter avant de passer aux dev ...
y a plein de tutorials un peu partout

Reply

Marsh Posté le 05-10-2002 à 13:11:02    

et puis pkoi voudrait tu accéder à la request dans un bloc déclaratif ?

Reply

Marsh Posté le 05-10-2002 à 14:39:38    

benou a écrit a écrit :

et puis pkoi voudrait tu accéder à la request dans un bloc déclaratif ?




 
Je me disais ke  
 

Code :
  1. HttpServletRequest req = request;

 
 
était une déclaration. Je pensais surtout ke la séparation déclaration/instruction était informative (pour faire du code propre et facile à lire) mais k'elle n'avait aucune répercussion ds l'execution du code.
 
Pratiquement aucune doc online (à part la doc VisualAge) au boulot, et aucun accès internet. Le rêve  :sarcastic:


---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Marsh Posté le 06-10-2002 à 11:55:29    

nan nan : concretement, les JSP sont ensuite transformées en servlet. Les parties déclaratives seront placés dans la classe, à l'endroit de définitions des méthodes et des attributs. Les blocs d'instruction seront placés dans la méthode service.
 
Je ne comprend toujours pas pourquoi tu veux déclarer un attribut de type HttpServletRequest .... je pense que ca n'a vraiment aucun intérêt.
 
sinon, essayer de découvrir les JSP sur le tas c'est pas une bonne idée : tu cours à la catastrophe !
Si t'as pas accès au Net, achète un bouquin, mais ne part pas à l'aveuglette !!!

Reply

Marsh Posté le 06-10-2002 à 13:54:04    

benou a écrit a écrit :

nan nan : concretement, les JSP sont ensuite transformées en servlet. Les parties déclaratives seront placés dans la classe, à l'endroit de définitions des méthodes et des attributs. Les blocs d'instruction seront placés dans la méthode service.
 
Je ne comprend toujours pas pourquoi tu veux déclarer un attribut de type HttpServletRequest .... je pense que ca n'a vraiment aucun intérêt.
 
sinon, essayer de découvrir les JSP sur le tas c'est pas une bonne idée : tu cours à la catastrophe !
Si t'as pas accès au Net, achète un bouquin, mais ne part pas à l'aveuglette !!!




 
G déclaré cet attribut uniquement pour tester si "request" existait. Ça n'a effectivement aucun intérêt sinon  ;)  
 
En tout cas Benou, merci bocou pour tout t conseils, très sympa de ta part  :)


---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Marsh Posté le 06-10-2002 à 13:54:04   

Reply

Marsh Posté le 06-10-2002 à 14:10:17    

wips il faut utiliser l'objet request tel quel et il est toujours accessible.
 
A+


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 06-10-2002 à 14:14:40    

Pour ton problème de départ :

Code :
  1. req.setAttribute("lesDestinataires", recupDestinataires());
  2. RequestDispatcher dispatcher = request.getRequestDispatcher("/MaPage.jsp" );
  3. dispatcher.forward(req, res);


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 07-10-2002 à 18:22:04    

:jap:  
 
Merci ça marche nickel!


---------------
If fate doesn't make you laugh, then you don't get the joke
Reply

Sujets relatifs:

Leave a Replay

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