:kaola: hello un petit nouveau sur les forums, bref g un probleme avec tomcat et postgresql je développe une appli struts qui tourne sur tomcat lorsque je veux me connecter à ma base postgreSQL g une erreur de compil : :o
"
[#0000ff]GRAVE: Initializing application data source org.apache.struts.action.DATA_SOURCE
org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class ‘org.postgresql.Driver’, cause:
java.lang.ClassNotFoundException: org.postgresql.Driver at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:945)at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:810)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method[/#0000ff])"
g les bons jar au bon endroit ds shared lib de Tomcat je trouve bien
org.postgresql.Driver
par contre impossible de trouver qqpart :pfff:
org.apache.struts.action.DATA_SOURCE serait-ce la cause de mon problème ?
Merci d’avance
Tu n’as pas du mettre la lib du drvier PostGresql au bon endroit … Ou l’as tu mis exactement ?
dans shared/lib de tomcat
j’ai mis postgresql-8.0.309.jdbc3.jar
je n’ai pas pu trouver le jdbc3_0-stdext
je possède seulement le jdbc2_0-stdext
Moi, pperso, je place mes librairies, et notamment mes drivers de connexion dans WEB-INF/lib … Et comme ca ca marche sans probleme …
voyant qu’il y avait des pb je les ai mis aussi dans WEB-INF ms tjrs le même pb …
Tu as bien pensé à gerer le classpath ? Es tu sur de ton driver PostGresql ?
je suis sur win et la seule version de postgre est la 8.0 g dc pris les drivers fournis avec cette version, pour mon classpath c ok car les classes java reconnaissent bien mon import javax.sql.*; je pense que c un pb avec tomcat
Et alors? Ca ne veut pas dire que ton driver est pris en compte, javax.sql est un package standard de java
Comme le dit myself, l’import javax.sql correspond a des classes systèmes Java. Toutprogramme Java, pour peu qu’l y ait bien evidemment une VM d’installer savent ou chercher ces classes.
Par contre, pour les classes autres, type driver et jar persos, alors il faut lui dire à la VM ou chercher ces classes !!
c bien ce qui est fait dans le classpath non ??
oui, mais le fait que javax.sql soit reconnu à la compilation ne prouve pas que ton driver est correctement installé
java.lang.ClassNotFoundException: org.postgresql.Driver
Cette ligne montre qu’il n’a pas trouvé cette classe…
As tu tout simplement essayé de faire une classe Java toute bête et d’accéder à des données de ta base avec le driver “en erreur” :
DriverManager.registerDriver(new org.postgresql.Driver());
?
Voici l’extarit de struts-config.xml avec la connexion :
</data-source>
sachant que j’ai bien org.apache.commons.dbcp.BasicDataSource
dans mon arborescence ainsi que org.postgresql.Driver.class
Peux-tu nous montrer le paramétrage du classpath de Tomcat…
il y a bien {…};{chemin}/postgresql-8.0.309.jdbc3.jar;{…}?
ouaip y a bien F:\driver\postgresql-8.0.309.jdbc3
je v peut-être rajouter le .jar on sait jamais
sans .jar, ça ne risque pas de marcher…
merci ds la précipitation g oublié l’extension ptain 1/2 journée aaaaaaaaaaahhhhhhhhhhhhhhhh