Bonsoir,,
je développe une application utilisant des interface(.jsp) et controleurs (servlets) et une base de données(Mysql)
je veux realiser une communication entre deux servlets
c'est mon code

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
39
////////// servlet 1 
.....
   out.println("<td>");
             out.println("<form action='Connection_ajout' method='post'>");
            out.println("<input type='submit' value='Ajouter'>");
            out.println("</form>");
            out.println("</td>");
            out.println("</tr>");
......
out.println("</tr>");
 
           out.println("</table>");
           String valeurRetour = null;;                     
           request.setAttribute("nom", "nom");
           request.setAttribute("prenom","prenom");
           request.setAttribute("login","login");
           request.setAttribute("passe","passe");
           request.getRequestDispatcher("Connection_ajout").include(request, response);
           valeurRetour = (String)request.getAttribute("returnValue");
....
servlet 2 (connection_ajout):
 
....
 
 String log=(String) request.getAttribute("login");
                String passe=(String) request.getAttribute("passe");
          if(log==null || log.equals("") || passe==null || passe.equals("")) 
 
          {
              // je vais afficher une message d'erreur
 
          }
 
		else	try {
		Class.forName("com.mysql.jdbc.Driver").newInstance();
                Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/etap","root","root");
                Statement st= con.createStatement();
 
               int res=st.executeUpdate("insert into utilisateur(login,mot_de_passe) values('"+log+"','"+passe+"')");
mais il insere 2 ligne une ligne contient login="log" Mot de passe="passe"
et une autre qui contient login="null" et mot de passe="passe"

SVP vous pouvez m'aidez à corriger