Wo soll der JDBC-Treiber-JAR-Dateien befinden sich auf einem Tomcat-Bereitstellung mit einer datasource?

Ich java-web-Anwendung mit Spring, Hibernate, Tomcat7 & MySql. Ich benutze Datasource für die Datenbank-Operationen. Ich bin nicht ganz klar darüber, was ist der standard-Speicherort zum laden der jar-Dateien (Tomcat-jdbc.jar & Mysql-connector.jar) aus? Es funktioniert, wenn ich halten BEIDE die Gläser entweder in CATALINA_HOME/lib/ oder webapps/myApp/WEB-INF/lib. Aber mir wurde gesagt, nur zur Verwendung der Tomcat-jdbc aus CATALINA_HOME/lib/und mysql-connector.jar aus /WEB-INF/lib/ gibt, die eine ClassNotFound Ausnahme für Sql Driver. Kann jemand lassen Sie mich wissen, welche ist die richtige location für diese Gläser?

<bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource"
        destroy-method="close">
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="${db.url}" />
        <property name="username" value="${db.username}" />
        <property name="password" value="${db.password}" />
        <property name="initialSize" value="${db.initialSize}" />
        <property name="minIdle" value="${db.minIdle}" />
        <property name="maxActive" value="${db.maxActive}" />
        <property name="maxIdle" value="${db.maxIdle}" />
        <property name="testWhileIdle" value="${db.testWhileIdle}" />
        <property name="minEvictableIdleTimeMillis" value="${db.minEvictableIdleTimeMillis}" />
        <property name="timeBetweenEvictionRunsMillis" value="${db.timeBetweenEvictionRunsMillis}" />
        <property name="validationQuery" value="${db.validationQuery}" />
    </bean>
Hast du den MySQL-Treiber auf Ihrem classpath?
Ja. /WEB-INF/lib/mysql-connector.jar
Lesen Sie auch Apache Tomcat 6.0-Class Loader HOW-TO

InformationsquelleAutor PeterGriffin | 2013-09-04

Schreibe einen Kommentar