Redirection de jsp selon choix de boutons radio

Résolu
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010 - 6 août 2010 à 11:58
johnjjj Messages postés 120 Date d'inscription dimanche 4 avril 2010 Statut Membre Dernière intervention 24 septembre 2012 - 18 août 2010 à 03:41
Salut,
J’ai une jsp que je vais appeler index.jsp dans laquelle je sélectionne via des boutons radio. Le résultat est envoyé vers une servlet GestionServlet qui en fonction du bouton radio redirige soit vers une page ajref.jsp soit une autre ajproj.jsp soit vers une jsp supref.jsp . Juste là je n’arrive pas à faire la redirection vers l'une de ces pages jsp.
Je pense que le problème est dans le fichier web.xml mais je n’arrive pas à le concevoir.
<servlet>
<servlet-name>FirstForm</servlet-name>
<servlet-class>Index</servlet-class>
</servlet>

<servlet>
<servlet-name>FormAction</servlet-name>
<servlet-class> GestionServlet </servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>FirstForm</servlet-name>
/form
</servlet-mapping>
<servlet-mapping>
<servlet-name>FirstForm</servlet-name>
/
</servlet-mapping>
<servlet-mapping>
<servlet-name>FirstForm</servlet-name>
/
</servlet-mapping>


<servlet-mapping>
<servlet-name>FormAction</servlet-name>
*.do
</servlet-mapping>

Je serai reconnaissante si vous me dirigiez vers la bonne voie. Vraiment j’ai besoin de votre aide et c’est un stage que je suis censé le terminer.
Merci d’avance.
A voir également:

28 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
9 août 2010 à 19:00
Salut,

Une erreur 404 indique que le serveur ne trouve pas la ressource à l'url saisie : une page html, une jsp, ou... une servlet.

Donc si ta servlet n'est pas déployée sur le serveur, il ne pourra pas la trouver.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
3
johnjjj Messages postés 120 Date d'inscription dimanche 4 avril 2010 Statut Membre Dernière intervention 24 septembre 2012
9 août 2010 à 21:22
bonjour
404 c'est code erreur de protocole http
ca vous dire page n'existe
test le serveur es que demarre
et

je croix erreur existe au niveau de index.jsp

code de index


<form name="frml" action="GestionServlet" method="POST">
ajref
ajproj

supref


</form>


********NB ne maittre pas dans action="GestionServlet.java"
mettre action="GestionServlet"




pour code de servlet


if (request.getParameter("jsp").equals("ajref"))
request.getRequestDispatcher("ajref.jsp").forward(request, response);

else if(request.getParameter("jsp").equals("ajproj"))
request.getRequestDispatcher("ajproj.jsp").forward(request, response);

else
request.getRequestDispatcher("supref.jsp").forward(request, response);

*****il faut créer les page ajref.jsp et ajproj.jsp et supref.jsp

cordialement
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 août 2010 à 12:13
Salut,

C'est pas normal que tu ai autant de servlet FirstForm déclarée : une seule suffit (la première).

Sinon, apparemment tu utilises struts à la vue de ta dernière servlet déclarée. Et en struts, tu n'a pas besoin de faire d'autres servlet, juste paramétrer le fichier struts-config.xml pour définir tes actions. C'est dans ce fichier là que tu peux définir les redirections de tes ActionBean.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
6 août 2010 à 12:33
je vous remercie d'abord pour votre réponse,

En effet le mapping de la servlet j'ai mis 3 fois la servlet FirstForm mais c'est ce que j'ai trouvé dans un tutoriel que j'ai lu et que j'ai pas compris( c'est pour ça que j'ai posé le problème en discussion). Mais pour votre réponse je la essayé mais ça marche pas de même.(est ce que vous pouvez me corrigez)
ensuite en ce qui concerne struts et l'utilisation du fichier struts-config.xml pour définir les actions je pense qu'elle est plus compliquée que celle-ci c'est pour cela que j'ai pas penser à l'utiliser.

merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 août 2010 à 13:19
Salut,

Struts est un framework qui permet de simplifier largement le développement J2EE, et fait gagner pas mal de temps. Par contre, c'est sûr qu'il faut passer un peu de temps pour l'étudier et le maîtriser, mais en même temps, les stages en entreprises sont là pour cà, et ca te sera d'une grande utilité dans ton futur métier : les développements utilisant struts comme framework principal sont assez nombreux.

Si tu ne veux pas l'utiliser, libre à toi, mais alors enlève-le de ton fichier web.xml : c'est source d'erreurs et de confusion.

Ce qui te donnerai donc :
<servlet> 
<servlet-name>FirstForm</servlet-name> 
<servlet-class>Index</servlet-class> 
</servlet> 

<servlet> 
<servlet-name>FormAction</servlet-name> 
<servlet-class> GestionServlet </servlet-class> 
</servlet> 

<servlet-mapping> 
<servlet-name>FirstForm</servlet-name> 
/form 
</servlet-mapping> 


ça marche pas de même.


Qu'est-ce qui ne marche pas ? Quel est ton code java dans ta servlet pour faire la redirection vers la jsp que tu veux ?

______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
6 août 2010 à 15:57
Salut,
Je vous remercie encore une fois pour votre réponse.
votre conseil est très util dans la mesure où je vais le prendre en sérieux et je vais travailler la dessus. j'ai peur de Struts car je l'ai déjà utilisé dans un mini-projet mais ça était un peu difficile. Est ce que vous pouvez me proposer des tutoriels pour que je puisse m'approfondir dans ce framework .
pour le code de la servlet le voilà :

public class GestionServlet extends HttpServlet  {
   
 public void doPost(	HttpServletRequest request, 
HttpServletResponse response)
throws IOException, ServletException{
 


try {	if (request.getParameter("nom").equals("ajref"))
request.getRequestDispatcher("ajref.jsp").forward(request, response);

else if(request.getParameter("nom").equals("ajproj"))
request.getRequestDispatcher("ajproj.jsp").forward(request, response);

else 
request.getRequestDispatcher("supref.jsp").forward(request, response);}
catch(Exception e){
request.getRequestDispatcher("error.jsp").forward(request, response);

}
}	 
}


pour la servlet Index

public class Index extends HttpServlet  {
  
 
public void doGet(HttpServletRequest request, 
             HttpServletResponse response) 
           throws ServletException, IOException {

request.getRequestDispatcher("index.jsp").forward(request, response);
}  	   	  	    
}
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
6 août 2010 à 15:59
voilà les boutons radios dans la page index.jsp



 


et merci.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 août 2010 à 15:59
Salut,

Je peux te conseiller les tutoriaux du site developpez.com : il y en a certains qui sont ciblés sur struts, c'est avec eux que j'ai commencé à apprendre struts.

Struts n'est pas très compliqué et ca permet de respecter le modèle MVC, chose qu'il n'est pas forcément évident en utilisant J2EE sans framework.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
6 août 2010 à 16:04
merci,d'accord je vais les lire.
et pour le code que j'ai envoyé?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 août 2010 à 16:38
Salut,

Essaye plutôt ainsi :

public class GestionServlet extends HttpServlet  {
   
 public void doPost(	HttpServletRequest request, 
HttpServletResponse response)
throws IOException, ServletException{
 


try {	if (request.getParameter("nom").equals("ajref"))
getServletContext().getRequestDispatcher("ajref.jsp").forward(request, response);

else if(request.getParameter("nom").equals("ajproj"))
getServletContext().getRequestDispatcher("ajproj.jsp").forward(request, response);

else 
getServletContext().getRequestDispatcher("supref.jsp").forward(request, response);}
catch(Exception e){
getServletContext().getRequestDispatcher("error.jsp").forward(request, response);

}
}	 
}


Et vérifie le chemin d'accès à tes jsp : il faut préciser le chemin complet vers chaque page.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
6 août 2010 à 17:40
merci,
mais, malheureusement j'ai pas pu le fonctionner même en utilisant ce code et en
donnant le chemin correcte pour chaque jsp. je sais pas où peut être le problème?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 août 2010 à 17:49
Salut,

Mets un point d'arrêt dans le code pour voir s'il passe bien dans ta servlet.

Quel est l'erreur que tu as ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
7 août 2010 à 01:35
Salut,
Je m'excuse pour le retard. pour l'utilisation du point d'arrêt, lorsque je fais debug as ou run as de la servlet GestionServlet j'ai toujours le même message d'erreur " Http 404 La ressource demandée n'est pas disponible".
Et lorsque je fais run as de la page index.jsp ensuite je fais le choix et je valide j'ai rien ni message d'erreur ni le traitement demandé!!

je sais pas quoi faire maintenant???

je vous remercie pour votre aide.
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
9 août 2010 à 18:24
salut à tous, aidez moi S.V.P ?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
9 août 2010 à 18:36
Salut,

Est-ce que ta servlet est bien déployé sur le serveur d'application lorsque tu teste ? Est-ce que ton serveur est lancé ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
9 août 2010 à 18:52
salut,
j'ai pas bien compris votre première question,e
pour la deuxième chaque fois que je fais run as on server
le serveur restart.
merci d'avance.
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
11 août 2010 à 12:59
Je vous remercie tous, spécialement DARKSIDIOUS vous m'avez dirigé.
merci aussi à johnjjj vous avez raison, j'avais quelques rectifications dans la page index.jsp mais aussi dans la GestionServlet j'ai ajouté un "/" pour chaque page jsp et ça marche maintenant.
comme ceci :

request.getRequestDispatcher("/ajref.jsp").forward(request, response); 


même si j'ai un autre problème dans le même sujet lorsque je fais la redirection vers une des trois pages jsp il y a des traitements à faire:les formulaires qui vont être remplit je vais récupérer leur données pour les insérer dans des tables dans la base de données aprés je vais me dirigé vers une jsp globale où j'ai toutes les données que j'ai saisie dans ces tables.

je me demande comment je vais dire tout cela à une servlet et au web.xml.

si je dois marqué cette discussion résolu et j'ouvre une autre. dites le moi!

et merci beaucoup..
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
11 août 2010 à 13:06
Salut,

Pas besoin de réouvrir un autre topic : c'est la suite de celui-ci (à peu près le même genre de problème).

Tu as plusieurs solutions :
* soit faire une servlet par redirection (ca a l'avantage de pouvoir être appelé par n'importe quel page si jamais tu as besoin de refaire ce traîtement à un autre endroit de ton application). Et ainsi, au lieu de rediriger vers la page jsp, il te faudra rediriger vers la servlet.
* soit mettre le code de chargement dans ta servlet actuelle (pas très propre, et surtout, ce n'est pas très judicieux d'avoir une servlet qui fait plusieurs choses)
* soit faire une classe qui se chargera de charger les données dans la requête, et d'appeler la classe qu'il faut dans ta servlet courante.

Je pense que la première solution est la plus standard et la plus élégante.

______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
11 août 2010 à 13:33
merci beaucoup je vais essayer de faire la première méthode et je vais vous répondre,

merci beaucoup pour tout.
0
zahira87 Messages postés 16 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 18 août 2010
16 août 2010 à 12:35
Bonjour,

Alors, j'ai opté pour la première méthode, j'ai essayé de la faire, mais j'ai rencontré des problème toujours au niveau de la redirection. et toujours je sais pas quoi faire avec le web.xml. le voilà :
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>rk</display-name>
<servlet>

<servlet-name>FirstForm</servlet-name>
<servlet-class>sim.Index</servlet-class>
</servlet>
<servlet>
<servlet-name>FirstForm1</servlet-name>
<servlet-class>sim.Ref</servlet-class>
</servlet>
<servlet>
<servlet-name>SecondForm</servlet-name>
<servlet-class>sim.Proj</servlet-class>
</servlet>
<servlet>
<servlet-name>TirdForm</servlet-name>
<servlet-class>sim.Sup</servlet-class>
</servlet>
<servlet>

<servlet-name>FinalForm</servlet-name>
<servlet-class>sim.Vue</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FirstForm</servlet-name>
/form
</servlet-mapping>
<servlet-mapping>
<servlet-name>FirstForm1</servlet-name>
/
</servlet-mapping>
<servlet-mapping>
<servlet-name>SecondForm</servlet-name>
/
</servlet-mapping>
<servlet-mapping>
<servlet-name>TirdForm</servlet-name>
/
</servlet-mapping>
<servlet-mapping>
<servlet-name>FinalForm</servlet-name>
*.do
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>



merci de m'aider.
0
Rejoignez-nous