Мы пытаемся реализовать Hibernate 2-го уровня Cache через Hazelcast. Мы попытались использовать версии Hibernate версии 4.3.11 с использованием версии плагина Hazelcast, как указано в ссылке gifib https://github.com/hazelcast/hazelcast-hibernate/blob/master/README.md.Hazelcast 3.7.1 -Hibernate 4.X Второй уровень Cache - org/hibernate/cache/QueryResultsRegion класс не найден
Когда мы начинаем приложение, мы сталкиваемся исключение -
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
Мы видим, что этот класс был удален в этой версии гибернации. Кто-нибудь может сообщить нам о реальных версиях, поддерживаемых этим плагином Hazelcast? Кроме того, мы хотели перейти на последнюю версию и, следовательно, загрузили версию Hibernate 5.2.3 вместе с версией Hazelcast https://github.com/hazelcast/hazelcast-hibernate5, но это также приводит к тому же исключению.
Настройки hibernate.cfg.xml для кэша являются следующим образом-
\t <property name="hibernate.cache.use_second_level_cache">true</property>
\t <property name="hibernate.cache.use_query_cache">true</property>
\t <property name="hibernate.cache.use_minimal_puts">true</property>
\t <property name="hibernate.cache.region.factory_class">com.hazelcast.hibernate.HazelcastLocalCacheRegionFactory</property>
\t <property name="hibernate.cache.hazelcast.shutdown_on_session_factory_close">false</property>
Может кто-нибудь, пожалуйста, помогите нам на правильные версии?
Спасибо, Аравиндом
вы используете hazelcast-all.jar в вашем классе? – Mesut
Да, мы делаем. Мы используем 3.7.1 – Aravind
Можете ли вы просто попробовать использовать hazelcast-3.7.1.jar и включить необходимую фюзеляж-гибернатную банку на основе вашей версии спящего режима? – Mesut