2012-07-28 42 views
5

Tôi sẽ không đăng bài này trừ khi tôi thực sự thất vọng. Tôi đang cố gắng để cấu hình C3P0 với Hibernate 4.1.1 trong một ứng dụng rất đơn giản nhưng tôi nhận được một lớp học không tìm thấy ngoại lệ. Tôi đã bao gồm tập tin jar C3P0 cụ thể trong classpath của tôi. ngủ đông-c3p0-3.5.2-Final.jarHibernate 4 - cấu hình 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 

Trả lời

3

Các file jar bạn đã bao gồm có phiên bản 3.5.2 Final, và không chứa lớp bạn đã cấu hình. Tại sao bạn không sử dụng phiên bản có phiên bản 4.1.1 (vì đây là phiên bản Hibernate mà bạn sử dụng) và có lớp cần thiết bên trong: http://grepcode.com/snapshot/repository.jboss.org/nexus/content/repositories/releases/org.hibernate/hibernate-c3p0/4.1.1.Final/

+0

Cảm ơn bạn rất nhiều. Tôi không chắc tại sao tệp jar này không được bao gồm trong gói dành cho ngủ đông 4.1.1 mà tôi đã tải xuống từ trang web. – VJune

+0

Tôi chỉ xem xét các gói tải xuống và tất cả đều chứa jar hibernate-c3p0. Bạn không chắc chắn "bó ngủ đông" nào bạn đang xem ... –

Các vấn đề liên quan