Bonjour,
Alors j'ai un souci de connexion JDBC. J'ai pourtant suivi les doc tomcat, épluché les forums ... rien n'y fait : je bloque.
Mon environnement :
tomcat 6.0.35
jdk 1.5
eclipse
oracle 9i
Ci-dessous mon dev :
[CATALINA_HOME]/conf/context.xml
WEB-INF/web.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <Context> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!-- Specify a JDBC datasource --> <Resource name="myDB" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@machine:port:sid" username="user" password="mdp" maxActive="20" maxIdle="10" maxWait="-1" /> </Context>
BDManager.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <web-app ...> ... <!-- Connection BDD --> <resource-ref> <description>Oracle Datasource</description> <res-ref-name>myDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
Ci-dessous mon erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ... try { Context ctx = ctx = new InitialContext(); Context envCtx = (Context)ctx.lookup("java:/comp/env/"); DataSource dataSource = (DataSource) envCtx.lookup("myDB"); ...
Explication :
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 Exception Chainée : org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' Cannot create JDBC driver of class '' for connect URL 'null'Pile d'appel de l'exception chainée : org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) at com.bouygtel.esav.util.db.BDManager.getConnection(BDManager.java:159) at com.bouygtel.esav.util.db.DBControler.pexecute(DBControler.java:88) at com.bouygtel.esav.util.db.DBControler.execute(DBControler.java:149) at com.bouygtel.esav.util.db.AbstractDAO.execute(AbstractDAO.java:99) ... Caused by: java.sql.SQLException: No suitable driver at java.sql.DriverManager.getDriver(DriverManager.java:243) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437) ... 32 more
Quand je déploie mon appli, mon datasource est initialisé n'est pas renseigné avec les valeurs du context.xml.
L'erreur intervient lors d'une tentative de connection.
J'ai tenté de rajouter "jdbc/" dans le dataSourceName => même erreur.
J'ai tenté de faire la config dans server.xml puis de faire un resourceLink dans context.xml => même erreur.
J'ai tenté de mettre "oracle.jdbc.driver.OracleDriver" dans le driverClassName => même erreur.
Par contre, cela marche quand je met le context.xml dans META-INF (ce que je ne veux pas)
Pour précision, j'ai bien mis le jar ojdbc5.jar dans le répertoire [CATALINA_HOME]/lib.
Quelqu'un aurait-il une idée ?
Merci
Partager