Tomcat-JNDI-Ressource - Klasse nicht gefunden: oracle.jdbc.xa.client.OracleXADataSource
Das Problem
Immer, wenn ich meine Tomcat-server über Eclipse bekomme ich immer eine Klasse nicht gefunden Fehler:
SEVERE: Exception processing Global JNDI Resources
javax.naming.NamingException: Class not found: oracle.jdbc.xa.client.OracleXADataSource
at org.apache.naming.factory.BeanFactory.getObjectInstance(BeanFactory.java:136)
Das Setup
Meine server.xml - Datei ist eine Ressource-setup wie:
<GlobalNamingResources>
<Resource name="sub1" auth="Container"
type="oracle.jdbc.xa.client.OracleXADataSource"
factory="org.apache.naming.factory.BeanFactory"
user="****" password="*****"
URL="**************************************" />
</GlobalNamingResources>
context.xml hat einen Eintrag, der sieht so aus:
<ResourceLink name="dataSource/sub1" global="sub1" type="javax.sql.DataSource" />
Auf meine Bewerbung, ich bin mit der Oracle JDBC-Treiber - classes12.jar
Die Frage
Was brauche ich, um fix auf den Tomcat-server an, so dass Sie finden die entsprechende Klasse oracle.jdbc.xa.client.OracleXADataSource
. Meine erste Vermutung wäre, dass classes12.jar muss sein kopiert in einen Ordner, irgendwo auf dem server. Ich bin mir auch nicht ganz sicher, wo der Ordner unter Windows mit Eclipse... jede Hilfe wäre sehr geschätzt.
Dank!
InformationsquelleAutor John Strickler | 2011-06-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, Tomcat 6, die erforderliche Bibliothek kopiert werden muss, um
$CATALINA_HOME\lib
.Aus der In der Tomcat-Dokumentation zum einrichten der JDBC-DataSources:
Außerdem würde ich es vermeiden, mit
classes12.zip
. Es ist vorgesehen für die Verwendung in Java 1.2 und 1.3-runtime-Umgebungen. Verwendenojdbc14.jar
wenn Sie stecken bleiben mit Java 1.4. Oder verwenden Sie die empfohlenenojdbc6.jar
/ojdbc5.jar
für die Java 6 oder Java 5-Umgebungen.InformationsquelleAutor Vineet Reynolds
Die einfachste Lösung, unter der Annahme, dass
OracleXADataSource
ist eine Klasseclasses12.jar
ist zu kopieren, dass JAR in Tomcat-lib-Verzeichnis.$CATALINA_HOME/common/lib
$CATALINA_HOME/lib
InformationsquelleAutor Matt Ball
Nicht classes12.jar; JDK 1.2 vintage. Ihre Oracle-JDBC-Treiber-JAR-sollte passend zu Ihrer JDK und Oracle-Versionen (z.B. ojdbc16.jar für JDK 1.6).
Setzen, dass in den Tomcat /server/lib für Tomcat version 5.x und /lib für Tomcat version 6.x und höher.
Ich würde auch empfehlen, nicht zu verändern server.xml Datei. Besser gesagt, die Informationen in Ihr Projekt META-INF/context.xml Datei.
Ich benötigte nicht mehr die Antwort auf meine obige Frage nun nicht mehr, dass ich nicht brauchen, hängen die server. Nochmals vielen Dank... ich fühle mich befreit.
Ich bin froh, Ihnen zu helfen. Vielen Dank für das lassen mich wissen. Viel Glück.
InformationsquelleAutor duffymo
Vom die Dokumentation:
Also ja, Sie haben, um das Glas in $CATALINA_HOME/lib
InformationsquelleAutor JB Nizet
Kopieren classes12.jar in tomcat /common/lib-Verzeichnis .
InformationsquelleAutor Srikanth Venkatesh