Salut tertousse.
J'ai décidé de jeter un coup d'oeil à l'utilisation des datasources avec tomcat.
Et je sèche depuis qlq heures sur un pbm qui est peut-être simple...?
Dans mon server.xml j'ai ceci:
Code :
- <Context path="/myApp" docBase="myApp" debug="0" reloadable="true" crossContext="true">
- <Resource name="jdbc/postgres" auth="Container" type="javax.sql.DataSource"/>
- <ResourceParams name="jdbc/postgres">
- <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter>
- <parameter><name>driverClassName</name><value>org.postgresql.Driver</value></parameter>
- <parameter><name>url</name><value>jdbc:postgresql://142.240.107.80:5432/osw</value></parameter>
- <parameter><name>username</name><value>postgres</value></parameter>
- <parameter><name>password</name><value></value></parameter>
- <parameter><name>maxActive</name><value>20</value></parameter>
- <parameter><name>maxIdle</name><value>10</value></parameter>
- <parameter><name>maxWait</name><value>-1</value></parameter>
- </ResourceParams>
- </Context>
|
Dans mon web.xml :
Code :
- <resource-ref>
- <res-ref-name>jdbc/postgres</res-ref-name>
- <res-type>javax.sql.DataSource</res-type>
- <res-auth>Container</res-auth>
- </resource-ref>
|
Et j'ai une page jsp très sale où je fais ceci :
Code :
- String foo = "Not Connected";
- int bar = -1;
- try
- {
- Context ctx = new InitialContext();
- if(ctx == null ) throw new Exception("Boom - No Context" );
- DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/postgres" );
- if (ds != null)
- {
- Connection conn = ds.getConnection();
-
- if(conn != null)
- {
- %>
- Connection established :-) <BR>
- <%
- foo = "Got Connection "+conn.toString();
- Statement stmt = conn.createStatement();
- ResultSet rst = stmt.executeQuery("select id, foo, bar from testdata" );
- if(rst.next())
- {
- foo=rst.getString(2);
- bar=rst.getInt(3);
- }
- conn.close();
- }
- else
- {
- %>
- Connection failed :-( <BR>
- <%
- }
- }
- }
- catch(Exception e)
- {
- java.io.StringWriter sw = new java.io.StringWriter();
- e.printStackTrace(new java.io.PrintWriter(sw));
- sw.flush();
- %>
- Plonk ! Bad config.<BR>
- <%= sw.toString() %>
- <%
- }
|
Et ça plonke en me disant :
java.sql.SQLException: Cannot load JDBC driver class 'null' at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:529) ...etc...
Alors si ça saute aux yeux de qlqn, je lui serais much much reconnaissant. Moi je ne vois plus rien. Peut-être après une nuit de sommeil ?
edit: ça plante sur le getConnection()
Message édité par krosso le 07-05-2003 à 17:19:47