hibernate二级缓存报错could not instantiate RegionFactory [org.hibernate.cache.impl.bridge.RegionFactoryCac

使用hibernate被指二级缓存时报错,错误的代码如下:

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/F:/myeclipse2014%e6%9c%80%e6%96%b0%e6%96%87%e6%a1%a3/one2manySecondCacch/lib/slf4j-simple-1.5.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/myeclipse2014/configuration/org.eclipse.osgi/bundles/101/1/.cp/myeclipse-data/3.3/lib/core/required/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
50 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.1.GA
75 [main] INFO org.hibernate.cfg.Environment - hibernate.properties not found
88 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist
102 [main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling
464 [main] INFO org.hibernate.cfg.Configuration - configuring from resource: /hibernate.cfg.xml
464 [main] INFO org.hibernate.cfg.Configuration - Configuration resource: /hibernate.cfg.xml
790 [main] INFO org.hibernate.cfg.Configuration - Reading mappings from resource : com/silence/domain/Student.hbm.xml
1043 [main] INFO org.hibernate.cfg.HbmBinder - Mapping class: com.silence.domain.Student -> Student
1243 [main] INFO org.hibernate.cfg.Configuration - Reading mappings from resource : com/silence/domain/Department.hbm.xml
1316 [main] INFO org.hibernate.cfg.HbmBinder - Mapping class: com.silence.domain.Department -> Department
1326 [main] INFO org.hibernate.cfg.Configuration - Configured SessionFactory: null
1329 [main] INFO org.hibernate.cfg.HbmBinder - Mapping collection: com.silence.domain.Department.student -> Student
1344 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - Using Hibernate built-in connection pool (not for production use!)
1344 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - Hibernate connection pool size: 20
1345 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - autocommit mode: false
1627 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - using driver: oracle.jdbc.OracleDriver at URL: jdbc:oracle:thin:@localhost:1521/oracle12c
1628 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - connection properties: {user=c##scott, password=****}
3328 [main] INFO org.hibernate.cfg.SettingsFactory - RDBMS: Oracle, version: Oracle Database 11g Release 11.1.0.0.0 - Production
3328 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC driver: Oracle JDBC driver, version: 11.1.0.6.0-Production+
3372 [main] INFO org.hibernate.dialect.Dialect - Using dialect: org.hibernate.dialect.OracleDialect
3378 [main] WARN org.hibernate.dialect.Oracle9Dialect - The Oracle9Dialect dialect has been deprecated; use either Oracle9iDialect or Oracle10gDialect instead
3382 [main] WARN org.hibernate.dialect.OracleDialect - The OracleDialect dialect has been deprecated; use Oracle8iDialect instead
3386 [main] INFO org.hibernate.transaction.TransactionFactoryFactory - Using default transaction strategy (direct JDBC transactions)
3390 [main] INFO org.hibernate.transaction.TransactionManagerLookupFactory - No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
3391 [main] INFO org.hibernate.cfg.SettingsFactory - Automatic flush during beforeCompletion(): disabled
3391 [main] INFO org.hibernate.cfg.SettingsFactory - Automatic session close at end of transaction: disabled
3391 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC batch size: 15
3391 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC batch updates for versioned data: disabled
3393 [main] INFO org.hibernate.cfg.SettingsFactory - Scrollable result sets: enabled
3393 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC3 getGeneratedKeys(): disabled
3393 [main] INFO org.hibernate.cfg.SettingsFactory - Connection release mode: auto
3394 [main] INFO org.hibernate.cfg.SettingsFactory - Default batch fetch size: 1
3394 [main] INFO org.hibernate.cfg.SettingsFactory - Generate SQL with comments: disabled
3395 [main] INFO org.hibernate.cfg.SettingsFactory - Order SQL updates by primary key: disabled
3395 [main] INFO org.hibernate.cfg.SettingsFactory - Order SQL inserts for batching: disabled
3395 [main] INFO org.hibernate.cfg.SettingsFactory - Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
3400 [main] INFO org.hibernate.hql.ast.ASTQueryTranslatorFactory - Using ASTQueryTranslatorFactory
3400 [main] INFO org.hibernate.cfg.SettingsFactory - Query language substitutions: {}
3401 [main] INFO org.hibernate.cfg.SettingsFactory - JPA-QL strict compliance: disabled
3402 [main] INFO org.hibernate.cfg.SettingsFactory - Second-level cache: enabled
3402 [main] INFO org.hibernate.cfg.SettingsFactory - Query cache: disabled
3413 [main] INFO org.hibernate.cfg.SettingsFactory - Cache region factory : org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge
3414 [main] INFO org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge - Cache provider: org.hibernate.cache.NOCacheProvider
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.silence.view.test.main(test.java:23)
Caused by: org.hibernate.HibernateException: could not instantiate RegionFactory [org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge]
at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:412)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:271)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325)
at com.silence.util.HibernateUtil.<clinit>(HibernateUtil.java:15)
... 1 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:407)
... 5 more
Caused by: org.hibernate.cache.CacheException: could not instantiate CacheProvider [org.hibernate.cache.NOCacheProvider]
at org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge.<init>(RegionFactoryCacheProviderBridge.java:66)
... 10 more
Caused by: java.lang.ClassNotFoundException: org.hibernate.cache.NOCacheProvider
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:260)
at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:123)
at org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge.<init>(RegionFactoryCacheProviderBridge.java:63)

... 10 more

注释点缓存的代码,项目可以正常的运行

<!-- 启用二级缓存 -->
 <property name="cache.use_second_level_cache">false</property>
 <!-- 指定使用哪种二级缓存 -->

         <!--
 <property name="cache.provider_class">org.hibernate.cache.OSCacheProvider</property>
-->

       如上所示,注释掉后可以正常的运行。但是启用的时候就报错。

       如网上说的,在struts2中找了个commons-logging-1.1.1.jar包加进去,项目可以正常的运行了,但是二级缓存却没法使用了。

      求各位指点指点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值