Bonjour,
J ai fais une servlet qui doit executer une requete de type insert.
Cette servlet est appele depuis une page JSP. Mon probleme est que la requete s execute 2 fois... comment contourner ce probleme ?
Voila mon code :
servlet.java
page.jsp
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
40
41
42
43
44
45
46
47 package servlets; import services.BDD; import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class insertActi extends HttpServlet { private static ServletContext sc; public void init(ServletConfig config) throws ServletException { super.init(config); sc = this.getServletContext(); } public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { BDD bdd = new BDD(); bdd.connexion(); boolean insertBool = false; try { String query = "insert into T_Client (Nom_Client) values ('nn');"; insertBool = bdd.insertSQL(query); if (insertBool = false) System.out.println ("Erreur à l'insertion dans T_Activite..."); String q = "select * from T_Client;"; ResultSet RS = bdd.executeSQL(q); while (RS.next()) { System.out.println(RS.getString("Nom_Client")); } RS.close(); } catch (Throwable e) { System.out.println ("Erreur à l'exécution de la requête insert..."); } bdd.deconnexion(); response.sendRedirect("listeactivitesFrame.jsp"); } }
J utilise internet explorer 6.0.
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 <script language="javascript"> function sortie() { document.activitesForm.submit(); } </script> <% bdd.connexion(); %> <form name="activitesForm" method="post" action="insertActi"> .... <td width="10%" nowrap height="9"> <div align="right"><input type="submit" name="btnSauveActivite" value="Enregistrer" onClick="sortie();"></div> </td> </tr> </table> <% }%> </form>
Merci !
Partager