Bonjour ,

J'ai un serveur unix sur lequel j'ai installé oracle 11g et tomcat 6 notament.

Sur ma base oracle j'arrive a requêter avec sqldeveloper en utilisant :

jdbc:oracle:thin:@IP:1521:SID ainsi que le user et mot de passe.

Avec netbeans sur mon PC j'arrive à me connecter avec le même code java que sur mon serveur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
public DBConnexion(){
      try {
      con=null;
      Class.forName("oracle.jdbc.driver.OracleDriver");
      con=DriverManager.getConnection(
            "jdbc:oracle:thin:@IP:1521:SID","user","pass");
      s=con.createStatement(); 
      } catch(Exception e){e.printStackTrace();}
    }
Par contre quand je suis sur le serveur la même chaine de connexion ne fonctionne pas. Dans les logs 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
 
java.lang.ArrayIndexOutOfBoundsException: 7
        at oracle.security.o3logon.C1.r(C1)
        at oracle.security.o3logon.C1.l(C1)
        at oracle.security.o3logon.C0.e(C0)
        at oracle.security.o3logon.O3LoginClientHelper.getEPasswd(O3LoginClientHelper)
        at oracle.jdbc.ttc7.O3log.<init>(O3log.java:287)
        at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:231)
        at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:200)
        at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:251)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:224)
        at java.sql.DriverManager.getConnection(DriverManager.java:620)
        at java.sql.DriverManager.getConnection(DriverManager.java:200)
        at connectionpool.DBConnexion.<init>(DBConnexion.java:22)
. Je précise que c'est un code qui fonctionne et qui n'est pas modifié sur un autre serveur.

Je laisse une autre trace que j'ai pu trouver sur le serveur si ça peut aider :
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
 
14 avr. 2010 16:03:07 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: "Servlet.service()" pour la servlet jsp a généré une exception
java.lang.NullPointerException
        at connectionpool.DBConnexion.recupereRequete(DBConnexion.java:35)
        at Delta.PertesTransWeb.isNew(PertesTransWeb.java:43)
        at org.apache.jsp.PertesTrans_jsp._jspService(PertesTrans_jsp.java:69)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:636)
Le code associé :
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
 
package connectionpool;
 
import java.sql.*;
/**
 *
 * @author toto
 */
public class DBConnexion {
 
    public Connection con;
    public Statement s;
 
    public DBConnexion(){
      try {
      con=null;
      Class.forName("oracle.jdbc.driver.OracleDriver");
      con=DriverManager.getConnection(
              "jdbc:oracle:thin:@IP:1521:SID","user","pass");
      s=con.createStatement(); 
      } catch(Exception e){e.printStackTrace();}
    }
 
    public void executeRequete(String requete){
        try {
        s.execute(requete);
        } catch(SQLException e){e.printStackTrace();}
    }
 
    public ResultSet recupereRequete(String requete) throws SQLException{
        return s.executeQuery(requete);
    }
 
    public void closeConnexion(){  
      try {
        s.close();
      con.close();
      } catch(SQLException e){e.printStackTrace();}
    }
}