2012-12-14 12 views
6

मेरे आवेदन में मैं हाइबरनेट-कोर-4.1.8 जार का उपयोग करता हूं और एक द्वितीय स्तर कैश के रूप में एक ehCache लेना चाहता हूं। जो जार मैं वर्तमान में उपयोग कर रहा हूं वह है ehcache-core-2.5.0। मैंने इसे अपने वेबकॉन्टन/वेब-आईएनएफ/lib फ़ोल्डर में रखा और इसे क्लासपाथ में भी रखा।ehcache hibernate 4

मेरे hibernate.cfg.xml इस तरह दिखता है:

<hibernate-configuration> 
    <session-factory> 
    ....  
     <property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property> 
     <property name="hibernate.cache.use_second_level_cache">true</property> 
     <property name="hibernate.cache.use_query_cache">true</property> 
    </session-factory> 
</hibernate-configuration> 

ehcache.xml जो JavaResources/src फ़ोल्डर में रखा जाता है:

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="true" 
     monitoring="autodetect" dynamicConfig="true"> 

    <defaultCache 
       maxElementsInMemory="100000" 
       eternal="false" 
       timeToIdleSeconds="1000" 
       timeToLiveSeconds="1000" 
       overflowToDisk="false" 
       /> 
</ehcache> 

जब अपने आवेदन वर्ग ऑर्ग चल रहा है। hibernate.cache.ehcache.EhCacheRegionFactory नहीं पाया जाता है:

java.lang.ClassNotFoundException: Could not load requested class : org.hibernate.cache.ehcache.EhCacheRegionFactory 
    at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl$1.findClass(ClassLoaderServiceImpl.java:99) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:264) 
    at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:138) 
    at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:444) 
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:275) 
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2283) 
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2279) 
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1748) 
    at creator.controllers.MyFactory.<clinit>(MyFactory.java:18) 
    at creator.controllers.SchoolDAO.getList(SchoolDAO.java:98) 
    ..... 

उत्तर

7

आपशामिल करने की ज़रूरतdownloading it द्वारा या आप उपयोग कर रहे है Maven इस

<dependency> 
<artifactId>hibernate-ehcache</artifactId> 
<groupId>org.hibernate</groupId> 
<version>4.0.0.CR6</version> 
</dependency> 
+1

की तरह अपने निर्भरता में रख के रूप में भी अपने जार जोड़ने के बाद ठीक काम करता है slf4-api-1.7.2 यह आवश्यकता के लिए (http से लगता है: // www.slf4j.org/download.html) परियोजना के लिए :) धन्यवाद! – chris

+0

+1 मेरी समस्या को हल करने के लिए भी वोट दें। –

+0

अब यह मेरे लिए भी काम कर रहा है –

संबंधित मुद्दे