Bonjour, j'ai crée un servlet qui affiche le contenu d'une table d'une base de donnée mysql.
le problème est que la page retournée de ma servlet ne s'affiche pas :
Etat HTTP 500 -
type Rapport d'exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
java.lang.NullPointerException Servlet1.doGet(Servlet1.java:52) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.5.16.
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
58
59
60
61
62
63
64
65
66
67
68
69 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Connection con= null; ResultSet resultats = null; String requete = " "; try { //chargement du pilote Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); } catch (ClassNotFoundException e) { } try { //connection a la base de donnees con= DriverManager.getConnection("jdbc:odbc:test_java"); } catch (SQLException e) { } //creation et execution de la requete requete = "SELECT * FROM seuils"; try { Statement stmt = con.createStatement(); resultats = stmt.executeQuery(requete); } catch (SQLException e) { } response.setContentType("text/html"); PrintWriter out = new PrintWriter (response.getOutputStream()); out.println("<html>"); out.println("<head><title>affichage des seuils</title></head>"); out.println("<body bgcolor='#8DE9FC'><br><center><h1>voici les seuils<h1>"); out.println("<br><br><table border=1>"); out.println("<tr><td>"); try { ResultSetMetaData rsmd = resultats.getMetaData(); int nbCols = rsmd.getColumnCount boolean encore = resultats.next(); while (encore)//tant que la table n'est pas vide... { for (int i = 1; i<=nbCols; i++) { System.out.println(resultats.getInt(i)); switch (i) { case 1 : out.println("précipitation maxi : " + resultats.getString(i)+ "</td><td>"); break; case 2 : out.println( "précipitation maxi : " + resultats.getString(i)+ "</td><td>"); break; case 3 : out.println( "vitesse du vent maxi : " + resultats.getString(i)+ "</td><td>"); break; case 4 : out.println( "vitesse du vent maxi : " + resultats.getString(i)+ "</td><td>"); break; default : break; } } encore = resultats.next(); } out.println("</tr></table></center></body></html>"); out.close(); resultats.close(); } catch (SQLException e) { } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } }
.html
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <html><head><title>test servlet journalier</title></head> <marquee><h1>Bienvenu sur le site de la station météo</h1></marquee> <br><br><body bgcolor="yellow"> <form action=http://127.0.0.1:8080/servlet_seuils/servlet/Servlet1 methode="post"> <br><br><br> <center> <input type=submit value="affichage de vos seuils"> </center> </form> </body></html>
Quelqu'un sait-il ou se trouve l'erreur ?
Partager