Issue using Infinispan as second level cache with Hibernate 3.x on JBoss EAP 6.1.0
Issue
We are migrating ehcache to infinispan, but we are facing the following exception:
[Server:test-node1] 16:10:32,724 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 54) MSC000001: Failed to start service jboss.persistenceunit."test.war#test": org.jboss.msc.service.StartException in service jboss.persistenceunit."test.war#test": javax.persistence.PersistenceException: [PersistenceUnit: test] Unable to build EntityManagerFactory
[Server:test-node1] at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:103) [jboss-as-jpa.jar:7.2.0.Final-redhat-8]
[Server:test-node1] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
[Server:test-node1] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
[Server:test-node1] at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
[Server:test-node1] at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads.jar:2.1.0.Final-redhat-1]
[Server:test-node1] Caused by: javax.persistence.PersistenceException: [PersistenceUnit: test] Unable to build EntityManagerFactory
[Server:test-node1] at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:911)
[Server:test-node1] at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:74)
[Server:test-node1] at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:200) [jboss-as-jpa.jar:7.2.0.Final-redhat-8]
[Server:test-node1] at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.access$600(PersistenceUnitServiceImpl.java:57) [jboss-as-jpa.jar:7.2.0.Final-redhat-8]
[Server:test-node1] at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:99) [jboss-as-jpa.jar:7.2.0.Final-redhat-8]
[Server:test-node1] ... 4 more
[Server:test-node1] Caused by: org.hibernate.HibernateException: could not instantiate RegionFactory [org.hibernate.cache.infinispan.JndiInfinispanRegionFactory]
[Server:test-node1] at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:423)
[Server:test-node1] at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:280)
[Server:test-node1] at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2833)
[Server:test-node1] at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2829)
[Server:test-node1] at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1840)
[Server:test-node1] at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:902)
[Server:test-node1] ... 8 more
[Server:test-node1] Caused by: java.lang.ClassNotFoundException: org.hibernate.cache.infinispan.JndiInfinispanRegionFactory from [Module "deployment.test.war:main" from Service Module Loader]
[Server:test-node1] at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:196) [jboss-modules-1.2.0.Final-redhat-1.jar:1.2.0.Final-redhat-1]
[Server:test-node1] at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:444) [jboss-modules-1.2.0.Final-redhat-1.jar:1.2.0.Final-redhat-1]
[Server:test-node1] at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:432) [jboss-modules-1.2.0.Final-redhat-1.jar:1.2.0.Final-redhat-1]
[Server:test-node1] at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:374) [jboss-modules-1.2.0.Final-redhat-1.jar:1.2.0.Final-redhat-1]
[Server:test-node1] at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:119) [jboss-modules-1.2.0.Final-redhat-1.jar:1.2.0.Final-redhat-1]
[Server:test-node1] at java.lang.Class.forName0(Native Method) [rt.jar:1.7.0_25]
[Server:test-node1] at java.lang.Class.forName(Class.java:190) [rt.jar:1.7.0_25]
[Server:test-node1] at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
[Server:test-node1] at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:409)
[Server:test-node1] ... 13 more
the content is available now. We have the following params on persistence.xml
<properties>
<property name="jboss.as.jpa.providerModule" value="hibernate3-bundled" />
<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
<property name="hibernate.show_sql" value="false" />
<property name="jdbc.batch_size" value="100" />
<property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.infinispan.JndiInfinispanRegionFactory"/>
<property name="hibernate.transaction.factory_class" value="org.hibernate.transaction.CMTTransactionFactory"/>
<property name="hibernate.cache.infinispan.cachemanager" value="java:CacheManager" />
<property name="hibernate.cache.infinispan.statistics" value="true"/>
<property name="hibernate.cache.use_query_cache" value="true" />
<property name="hibernate.cache.use_second_level_cache" value="true"/>
<property name="hibernate.cache.use_minimal_puts" value="true"/>
</properties>
Environment
- JBoss Enterprise Application Platform (EAP)
- 6.x
- Hibernate
- 3.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.