Hazelcast 3.7.1-Hibernate 4.X二级缓存-未找到org/Hibernate/Cache/QueryResultsRegion类

Hazelcast 3.7.1-Hibernate 4.X二级缓存-未找到org/Hibernate/Cache/QueryResultsRegion类,hazelcast,hibernate-cache,Hazelcast,Hibernate Cache,我们正试图通过Hazelcast实现Hibernate二级缓存。我们使用githib链接中提供的Hazelcast插件版本尝试Hibernate版本4.3.11 当我们启动应用程序时,我们面临一个例外- java.lang.NoClassDefFoundError: org/hibernate/cache/QueryResultsRegion at java.lang.Class.forName0(Native Method) at java.lang.Class.forName

我们正试图通过Hazelcast实现Hibernate二级缓存。我们使用githib链接中提供的Hazelcast插件版本尝试Hibernate版本4.3.11

当我们启动应用程序时,我们面临一个例外-

java.lang.NoClassDefFoundError: org/hibernate/cache/QueryResultsRegion
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:242)
    at org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.selectStrategyImplementor(StrategySelectorImpl.java:125)
    at org.hibernate.cache.internal.RegionFactoryInitiator.initiateService(RegionFactoryInitiator.java:87)
    at org.hibernate.cache.internal.RegionFactoryInitiator.initiateService(RegionFactoryInitiator.java:46)
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:83)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:223)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:197)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:178)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:295)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2442)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2438)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1855)
    at X.X.X.X.HibernateSessionFactory.<clinit>(HibernateSessionFactory.java:79)
    at X,.X.X.X.X.HibernatePlugIn.init(HibernatePlugIn.java:119)
    at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
    at javax.servlet.GenericServlet.init(GenericServlet.java:158)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1282)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1195)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1085)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5349)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5641)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.hibernate.cache.QueryResultsRegion
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734)
    ... 31 more
java.lang.NoClassDefFoundError:org/hibernate/cache/QueryResultsRegion
位于java.lang.Class.forName0(本机方法)
位于java.lang.Class.forName(未知源)
位于org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:242)
位于org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.selectStrategyImplementor(StrategySelectorImpl.java:125)
位于org.hibernate.cache.internal.RegionFactoryInitiator.initiateService(RegionFactoryInitiator.java:87)
位于org.hibernate.cache.internal.RegionFactoryInitiator.initiateService(RegionFactoryInitiator.java:46)
位于org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:83)
位于org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:223)
位于org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:197)
位于org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:178)
在org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:295)上
位于org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2442)
位于org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2438)
位于org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1855)
位于X.X.X.X.HibernateSessionFactory。(HibernateSessionFactory.java:79)
在X、.X.X.X.HibernatePlugIn.init处(HibernatePlugIn.java:119)
位于org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
位于org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
位于javax.servlet.GenericServlet.init(GenericServlet.java:158)
位于org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1282)
位于org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1195)
位于org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1085)
位于org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5349)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5641)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
位于java.util.concurrent.FutureTask.run(未知源)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(未知源)
位于java.lang.Thread.run(未知源)
原因:java.lang.ClassNotFoundException:org.hibernate.cache.QueryResultsRegion
位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891)
位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734)
... 还有31个
我们看到这个类在这个Hibernate版本中被删除了。有人能告诉我们这个Hazelcast插件支持的实际版本吗?此外,我们确实希望升级到最新版本,因此下载了Hibernate 5.2.3版本和Hazelcast版本,但这也导致了相同的异常

缓存的hibernate.cfg.xml设置如下所示-

true
真的
真的
com.hazelcast.hibernate.HazelcastLocalCacheRegionFactory

false
我再次下载了5.2 Hazelcasst插件的源代码,并重建了源代码,似乎解决了问题。至于问题,我不确定其他Hazelcast罐子基本上是一样的。最后使用的罐子-

hazelcast-3.7.1.jar, hazelcast-hibernate52-1.1.1-SNAPSHOT.jar(重建),
hibernate-core-5.2.3.Final.jar

我再次下载了5.2 Hazelcasst插件的源代码,并重建了源代码,似乎解决了这个问题。至于问题,我不确定其他Hazelcast罐子基本上是一样的。最后使用的罐子-

hazelcast-3.7.1.jar, hazelcast-hibernate52-1.1.1-SNAPSHOT.jar(重建),
hibernate-core-5.2.3.Final.jar

您在类路径中使用hazelcast-all.jar吗?是的,我们使用。我们正在使用3.7.1您可以尝试使用hazelcast-3.7.1.jar并根据您的hibernate版本包含必要的hazelcast hibernate jar吗?根据您的建议更改了jar…没有更改。我们仍然有相同的异常。您是否在类路径中使用hazelcast-all.jar?是的,我们使用。我们正在使用3.7.1您可以尝试使用hazelcast-3.7.1.jar并根据您的hibernate版本包含必要的hazelcast hibernate jar吗?根据您的建议更改了jar…没有更改。我们仍然有同样的例外。