2012-09-17 48 views
5

estoy tratando de crear un grupo independiente de primavera gestionados para Tomcat-DBCP utilizando la versión 7.0.30 de Tomcat-dbcp.jarorg.apache.tomcat.jdbc.pool.DataSource ya no está en el jar tomcat 7 dbcp?

Sin embargo, parece la clase org.apache.tomcat.jdbc.DataSource que se conoce en la documentación del Tomcat (http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html#Standalone)

<bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" 
    destroy-method="close"> 
    <property name="factory" 
     value="org.apache.tomcat.jdbc.pool.DataSourceFactory" /> 
    <property name="type" value="javax.sql.DataSource" /> 
    <property name="driverClassName" value="com.mysql.jdbc.Driver" /> 
    <property name="url" value="jdbc:mysql://localhost:3306/ym" /> 
    <property name="username" value="admin" /> 
    <property name="password" value="admin" /> 
    <property name="initialSize" value="5" /> 
    <property name="maxActive" value="10" /> 
</bean> 

Así que esta definición de frijol de primavera es correcta de acuerdo con Tomcat doc, sin embargo cuando inicio la aplicación, obtengo la excepción CNF:

Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.apache.tomcat.jdbc.pool.DataSource] for bean with name 'dataSource' defined in class path resource [application-context.xml]; nested exception is java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool.DataSource 

¿Estoy siendo muy estúpido y me falta lo obvio aquí?

Respuesta

6

La clase org.apache.tomcat.jdbc.pool.DataSource está incluida en tomcat-jdbc.jar, no en tomcat-dbcp.jar. El Tomcat JDBC Connection Pool es un reemplazo para commons-dbcp, de los cuales tomcat-dbcp es solo una versión renombrada.

El archivo jar tomcat-jdbc.jar no está incluido en todas las instalaciones de Tomcat (por ejemplo, no está incluido en el paquete estándar Debian/Ubuntu). Puede descargarlo desde Maven Central o puede encontrarlo en el archivo Tomcat binary distribution.

+0

Está incluido, al menos, en 7.0.37 tar.gz –

+0

Tienes razón, quise decir que no está incluido en algunas instalaciones, como el paquete Debian/Ubuntu para Linux. Editado mi respuesta para que quede más claro. –

+0

Tengo el paquete de Windows de tomcat. pero es Tomcat 8.0.14. ¿Dónde debería poner este archivo jar? – grep