Bonjour,
Je cherche à faire un formulaire pour récupérer un prénom et un nom ...
- J'ai fichier1.JSP qui est le formulaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <html> <head> <title>fichier1.jsp</title> </head> <body> <center> <h2>fichier1.jsp</h2> <hr> <form action="" method="post"> <table> <tr> <td>Nom</td> <td><input name="nom" value="votre nom" type="text" size="30"></td> </tr> <tr> <td>Prenom</td> <td><input name="prenom" value="votre prenom" type="text" size="30"></td> </tr> </table> <table> <tr> <td><input type="submit" value="Envoyer"></td> </tr> </table> </form> </center> </body> </html>
- un fichier web.xml:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <servlet> <servlet-name>retrieveContent</servlet-name> <servlet-class>web.retrievecontent.getNames</servlet-class> <init-param> <param-name>defautPrenom</param-name> <param-value>prenomInconnu</param-value> </init-param> <init-param> <param-name>defautNom</param-name> <param-value>nomInconnu</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>retrieveContent</servlet-name> <url-pattern>/fichier1.jsp</url-pattern> </servlet-mapping> </web-app>
- Une servlet getNames
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 package web.retrievecontent; import javax.servlet.http.HttpServlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class getNames extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // récupération des paramètres du formulaire String myNom = request.getParameter("nom"); String myPrenom = request.getParameter("prenom"); // affichage request.setAttribute("nom", myNom); request.setAttribute("prenom", myPrenom); getServletContext().getRequestDispatcher("/fichier2.jsp").forward(request,response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // on passe la main au GET doGet(request, response); } }
- Et enfin un fichier2.jsp qui devrait m'afficher les résultats:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <% // récupération des paramètres nécessaires à l'affichage String thisNom = (String)request.getAttribute("nom"); String thisPrenom = (String)request.getAttribute("prenom"); %> <html> <head> <title>Results</title> </head> <body> <center> <h2>Results</h2> <hr> <p> Prenom : <%= thisPrenom %> Name: <%= thisNom %> </p> </center> </body> </html>
Problème (on y arrive ... :-) )
Quand j'appelle fichier1.jsp dans un navigateur, celui ci ne me présente pas fichier1.jsp (le formulaire), mais directement fichier2.jsp, sans que je puisse entrer quoique ce soit dans mes champs ... et donc bien entendu avec des valeurs nullles. Est-ce que quelque chose cloche dans mon code ?
Merci si quelqu'un peut m'aideeeeer ....
Partager