bonjour,
J'ai mis en place une page jsp qui récupère des valeurs provenant de l'URL et les sauvegarde dans une BD.
donc j'ai fragmenter mon code et j'ai créé une classe pour la connexion à la base de donnée et la JSP exécute seulement la requête cependant l'enregistrement ne se fait pas dans la base de donnée.
voici le code de la classe sachant que je l'ai testé et ça marche
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
48
49
50
51
52
53
54
55
56
57 package com.database; import java.sql.*; import org.apache.log4j.Logger; public class Connect { public final static Connection getMyConnection() { Connection conn = null; try { Class.forName("org.postgresql.Driver"); System.out.println("Driver O.K."); String url = "jdbc:postgresql://localhost:5432/nowsms"; String user = "postgres"; String passwd = "12345"; conn = DriverManager.getConnection(url, user, passwd); System.out.println("Connexion effective !"); /* PreparedStatement st= conn.prepareStatement("INSERT INTO received ( num_tel, message) VALUES (?,?)"); st.executeUpdate(); conn.close(); st.close();*/ } catch(Exception e){ e.printStackTrace(); } return conn;} /*public static void main(String [] args){ Connect c= new Connect(); try{ Connection conn=c.getMyConnection(); PreparedStatement st= conn.prepareStatement("INSERT INTO received ( num_tel, message) VALUES (?,?)"); st.setString(1, "1212121"); st.setString(2, "ffjjfjfjfjfjf"); st.executeUpdate(); conn.close(); st.close(); } catch(Exception e){ e.printStackTrace(); } }*/ }
voici ma page jsp qui appelle le methode getMyConnection de la classe Connect.java
j'ai l'erreur suivante
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 <%@ page language="java" contentType="text/plain; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ page import="com.database.Connect"%> <%@ page import="java.sql.Connection"%> <%@ page import="java.sql.DriverManager"%> <%@ page import="java.sql.PreparedStatement"%> <%@ page import="java.sql.SQLException"%> <%@ page import="java.sql.Statement"%> <%@ page import="java.sql.*"%> <% String receipient = request.getParameter("receipient"); String id = request.getParameter("sender"); String message = request.getParameter("message"); try{ Connection conn = Connect.getMyConnection(); PreparedStatement st= conn.prepareStatement("INSERT INTO received ( id, message ) VALUES (?,?)"); st.setString(1, id); st.setString(2, message); st.executeUpdate(); conn.close(); st.close(); } catch(Exception e){ e.printStackTrace(); } %> sender: <%= id %> provider message<%= message %>
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 type Rapport d''exception message Impossible de compiler la classe pour la JSP: description Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête. exception org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP: Une erreur s'est produite à la ligne: 31 dans le fichier jsp: /WebContent/receive.jsp Connect cannot be resolved 28: try{ 29: 30: 31: Connection conn = Connect.getMyConnection(); 32: 33: PreparedStatement st= conn.prepareStatement("INSERT INTO received ( id, message ) VALUES (?,?)"); 34: st.setString(1, id); Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:366) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:468) org.apache.jasper.compiler.Compiler.compile(Compiler.java:378) org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/7.0.40.
Partager