2012-07-28 14 views
5

Non avrei postato questo a meno che non fossi davvero frustrato. Sto cercando di configurare C3P0 con Hibernate 4.1.1 in un'applicazione molto semplice, ma sto ottenendo un'eccezione di classe non trovata. Ho incluso il file jar specifico C3P0 nel mio classpath. hibernate-c3p0-3.5.2-Final.jarHibernate 4 - configurazione C3P0

hibernate.properties:

hibernate.connection.provider_class=org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider 
hibernate.c3p0.acquire_increment=1 
hibernate.c3p0.idle_test_period=180 
hibernate.c3p0.max_size=60 
hibernate.c3p0.max_statements=0 
hibernate.c3p0.min_size=10 

StackTrace:

28 Jul, 2012 9:23:08 PM org.hibernate.service.jdbc.connections.internal.ConnectionProviderInitiator instantiateExplicitConnectionProvider 
INFO: HHH000130: Instantiating explicit connection provider: org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider 
Exception in thread "main" org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.service.jdbc.connections.spi.ConnectionProvider] 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:186) 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:150) 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131) 
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.buildJdbcConnectionAccess(JdbcServicesImpl.java:223) 
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:89) 
    at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75) 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159) 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131) 
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:71) 
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2277) 
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2273) 
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1742) 
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1782) 
    at eko.test.hibernate.Hibernate4Test.main(Hibernate4Test.java:17) 
Caused by: org.hibernate.HibernateException: Could not instantiate connection provider [org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider] 
    at org.hibernate.service.jdbc.connections.internal.ConnectionProviderInitiator.instantiateExplicitConnectionProvider(ConnectionProviderInitiator.java:192) 
    at org.hibernate.service.jdbc.connections.internal.ConnectionProviderInitiator.initiateService(ConnectionProviderInitiator.java:114) 
    at org.hibernate.service.jdbc.connections.internal.ConnectionProviderInitiator.initiateService(ConnectionProviderInitiator.java:54) 
    at org.hibernate.service.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:69) 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:176) 
    ... 13 more 
Caused by: org.hibernate.service.classloading.spi.ClassLoadingException: Unable to load class [org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider] 
    at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:141) 
    at org.hibernate.service.jdbc.connections.internal.ConnectionProviderInitiator.instantiateExplicitConnectionProvider(ConnectionProviderInitiator.java:189) 
    ... 17 more 
Caused by: java.lang.ClassNotFoundException: Could not load requested class : org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider 
    at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl$1.findClass(ClassLoaderServiceImpl.java:99) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:264) 
    at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:138) 
    ... 18 more 

risposta

3

Il file jar è stato incluso con la versione 3.5.2-finale, e non contiene la classe che hai configurato. Perché non usi quello che ha la versione 4.1.1 (poiché questa è la versione di Hibernate che usi), e che ha la classe necessaria all'interno: http://grepcode.com/snapshot/repository.jboss.org/nexus/content/repositories/releases/org.hibernate/hibernate-c3p0/4.1.1.Final/

+0

Grazie mille. Non sono sicuro del motivo per cui questo file jar non sia incluso nel bundle di ibernazione 4.1.1 che ho scaricato dal sito web. – VJune

+0

Ho appena visto i bundle di download e contengono tutti il ​​jar hibernate-c3p0. Non sei sicuro di quale "bundle di ibernazione" stai guardando ... –

Problemi correlati