Почему мы получаем исключение, когда мы включаем кэш запросов в файле hibernate.cfg.xml, используя hibernate 5.3.1. Окончательная зависимость?

Я создал небольшую программу кэширования второго уровня, используя зависимость hibernate 5.3.1.final. Я использовал следующие зависимости для работы с кэшем второго уровня.

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>5.3.1.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-ehcache</artifactId>
    <version>5.3.1.Final</version>
</dependency>

В этой зависимости имя пакета 'EhcacheRegionFactory' было изменено. Поэтому нам нужно использовать, как показано ниже, свойство в нашем файле 'hibernate.cfg.xml'.

<property name="hibernate.cache.region.factory_class">
        org.hibernate.cache.ehcache.internal.EhcacheRegionFactory
</property>

В hibernate 5.3 кэш второго уровня работает нормально, но "cache-cache" не работает. Я получаю исключение, когда я включаю кеш запросов в hibernate.cfg.xml.

->Exception in thread "main" java.lang.ExceptionInInitializerError
->Caused by: org.hibernate.service.spi.ServiceException: Unable to create 
   requested service [org.hibernate.cache.spi.CacheImplementor]
->Caused by: org.hibernate.cache.CacheException: On-the-fly creation of 
  JCache Cache objects is not supported 
  [org.hibernate.cache.spi.TimestampsRegion]

Как решить это?

Но та же программа, когда я попробовал с зависимостью hibernate 5.2.17, кэш запросов работал нормально.

1 ответ

Использовать Hibernate ORM Hibernate Core "5.3.4. Окончательные зависимости будут работать

У тебя есть ehcache.xml файл в вашем classpath? Какой у вас конфиг ehcache?

Другие вопросы по тегам