2013-08-28 3 views
3

Таким образом, все, кажется, используют реализацию hibernate-memcached (https://code.google.com/p/hibernate-memcached/wiki) для Hibernate как кэш Memcached второго уровня.Интеграция с Memcached с Hibernate

Я пробовал интегрировать его с Hibernate, но я считаю, что он очень устарел. Например, он опирается на старые версии org.slfj и org.hibernate двоичных файлов (что ломает мой веб-сервис, так как я использую более новые двоичные файлы). Но даже исключая эти двоичные файлы во время сборки с Maven, кажется, что отсутствуют необходимые установки для hibernate.cache.region.factory_class, которые, вероятно, появились с новыми политиками кэширования для Hibernate.

Короче говоря, я бегу в вышеприведенном ошибки:

org.hibernate.cache.NoCacheRegionFactoryAvailableException: Second-level cache is used in the application, but property hibernate.cache.region.factory_class is not given, please either disable second level cache or set correct region factory class name to property hibernate.cache.region.factory_class (and make sure the second level cache provider, hibernate-infinispan, for example, is available in the classpath).

Моя догадка я должен написать свою собственную реализацию? Я просто не знаю, сколько еще сломанных шагов еще есть.

ответ

1

Я знаю, что это сообщение старое, но я думаю, на это нужно ответить в любом случае.

К сожалению, текущая версия hibernate-memcached 1.4-SNAPSHOT поддерживает только спящий режим max. 3.6.6. Если вы хотите использовать Hibernate 4, вам необходимо разблокировать его на github и изменить его самостоятельно.

последняя гибернации-Memcached версия доступна на https://github.com/raykrueger/hibernate-memcached

И если вы используете Maven, здесь отрывки для вас pom.xml

<repositories> 
    <repository> 
    <id>hibernate-memcached</id> 
    <name>hibernate-memcached</name> 
    <url>http://raykrueger.googlecode.com/svn/repository</url> 
    </repository> 
</repositories> 


<dependency> 
    <groupId>com.googlecode</groupId> 
    <artifactId>hibernate-memcached</artifactId> 
    <version>1.4-SNAPSHOT</version> 
</dependency> 
0

была такая же проблема и в конечном итоге делает более или меньше того, что описал Сергей в своем ответе. Если кто-либо еще ищет ответ на эту проблему, вы можете попробовать это сделать https://github.com/mihaicostin/hibernate-l2-memcached