bonjour.

j'ai développé une application java (servlet, jsp, hibernate) tournant correctement sur tomcat/mysql en local.

je voudrais installer mon application sur un serveur dédié ovh mais je galère depuis 15 jours pour accéder à ma base de données via hibernate. en revanche, cela fonctionne quand je me connecte directement dans une servlet avec un code du genre


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
 
 
        String loginUser = "***";
        String loginPasswd = "***";
        String loginUrl = "jdbc:mysql://localhost:3306/toupil";
 
        response.setContentType("text/html");    // Response mime type
 
        // Output stream to STDOUT
        PrintWriter out = response.getWriter();
 
 
 
        // Load the mm.MySQL driver
        try
           {
              Class.forName("com.mysql.jdbc.Driver");
              out.println("1");
              Connection dbcon = DriverManager.getConnection(loginUrl, loginUser, loginPasswd);
              // Declare our statement
              out.println("2");
              Statement statement = dbcon.createStatement();
              out.println("3");
              String query = "SELECT name_de FROM toupil.department";
 
              // Perform the query
              ResultSet rs = statement.executeQuery(query);
              out.println("4");
              out.println("il y a " + rs.getRow() + " départements");
            		  out.println("<TABLE border>");
 
              // Iterate through each row of rs
              while (rs.next())
              {
                  String m_name = rs.getString("name_de");
 
                  out.println("<tr>" + "<td>" + m_name + "</td>" + "</tr>");
              }
 
              out.println("</TABLE>");
 
              rs.close();
              statement.close();
              dbcon.close();
              out.println("aa");
            }



pour tester plus facilement, j'ai faius une servlet toute simple qui retourne la liste des départements stockés dans ma bdd. çà fonctionne en local mais pas sur le dédié. voilà le code de la servlet :

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
 
public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
 
		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out
				.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
		out.println("  <BODY>");
		out.print("    This is ");
		out.print(this.getClass());
		out.println(", using the GET method<br /><br />liste des departements ");
 
		ArrayList<Department> l = com.toupil.Classes.Department.listAllDepartments();
 
 
 
		for (int i=1;i<l.size();i++) {
			out.println("<br />" + l.get(i).getName_de());
		}
 
		out.println("  </BODY>");
		out.println("</HTML>");
		out.flush();
		out.close();
	}
et voici l'erreur à l'appel

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
 
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
	com.toupil.Test.Deps.doGet(Deps.java:59)
	javax.servlet.http.HttpServlet.service(Unknown Source)
	javax.servlet.http.HttpServlet.service(Unknown Source)
 
note La trace compl?te de la cause m?re de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0-snapshot.
Apache Tomcat/6.0-snapshot
la ligne 59 est "for (int i=1;i<l.size();i++) {"


dans les logs de tomcat, j'ai

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
 
25 janv. 2008 13:10:27 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: "Servlet.service()" pour la servlet Deps a g?n?r? une exception
java.lang.NullPointerException
        at com.toupil.Test.Deps.doGet(Deps.java:59)
        at javax.servlet.http.HttpServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown Source)
        at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown Source)
        at org.apache.catalina.core.StandardContextValve.invoke(Unknown Source)
        at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source)
        at org.apache.catalina.valves.ErrorReportValve.invoke(Unknown Source)
        at org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source)
        at org.apache.catalina.connector.CoyoteAdapter.service(Unknown Source)
        at org.apache.jk.server.JkCoyoteHandler.invoke(Unknown Source)
        at org.apache.jk.common.HandlerRequest.invoke(Unknown Source)
        at org.apache.jk.common.ChannelSocket.invoke(Unknown Source)
        at org.apache.jk.common.ChannelSocket.processConnection(Unknown Source)
        at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(Unknown Source)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:619)

pour passer du local au serveur, je change juste le user et le mot de passe de mon fichier hibernate.cfg.xml et je déploie le war
y-a-il d'autres manipulatiuons à faire ?

merci d'avance.