2011-02-01 223 views
0

我想配置我的應用程序使用ehCache。我正在使用Spring 2.5.6,Jboss 5.1.0 GA及其嵌入式版本的Hibernate以及ehCache-core V2.3.1。春季jboss ehcache

我也做了以下配置:

<property name="hibernateProperties"> 
    <props> 
    <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> 
    <prop key="hibernate.hbm2ddl.auto">update</prop> 
    <prop key="hibernate.show_sql">true</prop> 
    <prop key="hibernate.jdbc.batch_size">20</prop> 
    <prop key="hibernate.cache.provider_class">net.sf.ehcache.hibernate.SingletonEhCacheProvider</prop> 
    <prop key="net.sf.ehcache.configurationResourceName">ehcache.xml</prop> 
    <prop key="hibernate.cache.use_second_level_cache">true</prop> 
    <prop key="hibernate.cache.use_structured_entries">true</prop> 
    <prop key="hibernate.cache.use_query_cache">true</prop> 
    <prop key="hibernate.generate_statistics">true</prop> 
    <!-- prop key="hibernate.cache.use_second_level_cache">true</prop> 
    <prop key="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</prop> 
    <prop key="hibernate.cache.provider_class">net.sf.ehcache.hibernate.SingletonEhCacheProvider</prop> 
    <prop key="hibernate.cache.use_second_level_cache">true</prop> 
    <prop key="hibernate.cache.use_query_cache">true</prop--> 
    </props> 
</property> 

這是我ehcache.xml中

<defaultCache eternal="false" 
     overflowToDisk="false" 
     maxElementsInMemory="50000" 
     timeToIdleSeconds="30" 
     timeToLiveSeconds="6000" 
     memoryStoreEvictionPolicy="LRU" 
/> 
<cache name="com.model.SystemProperty" 
     maxElementsInMemory="5000" 
     eternal="true" 
     overflowToDisk="false" 
     memoryStoreEvictionPolicy="LFU" 
/>    

該文件位於類路徑中。

我加入以下到我的域對象:

@Cache(usage = CacheConcurrencyStrategy.READ_WRITE, region="vsg.ecotrak.admin.store.domain.Store", include="non-lazy") 

當我啓動服務器,它卡住。這裏是輸出:

13:17:09,000 INFO [SettingsFactory] Second-level cache: enabled 
13:17:09,000 INFO [SettingsFactory] Query cache: enabled 
13:17:09,016 INFO [SettingsFactory] Cache region factory : org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge 
13:17:09,017 INFO [RegionFactoryCacheProviderBridge] Cache provider: net.sf.ehcache.hibernate.SingletonEhCacheProvider 

任何理想,爲什麼發生這種情況?

我在Windows 7 64位上運行,如果重要的話。


我將ehcache jar降級到V 1.2.3,現在服務器啓動。

+0

將JBoss的日誌記錄提升爲DEBUG(使用`conf/jboss-log4j.xml`),然後查看它的內容。 – skaffman 2011-02-01 19:25:26

回答

0

是否將hibernate.cache.region.factory_class用於net.sf.ehcache.hibernate.EhCacheRegionFactory而不是Cache Provider(已棄用)方法使其更好?

也可以做一個線程轉儲時掛起?