erreur http 500 sur un servlet
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:
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:
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 ?