2013-03-18 59 views
0

我有使用的JdbcTemplate和Hibernate的应用程序。的Ehcache经理

这种配置的两个使用的Ehcache而是抛出异常:

org.hibernate.cache.CacheException: net.sf.ehcache.CacheException: Another unnamed CacheManager already exists in the same VM. Please provide unique names for each CacheManager in the config or do one of following: 

的JdbcTemplate使用的Spring XML 休眠使用的hibernate.cfg.xml

请帮忙配置配置。

我试图禁用ehcache.xml中默认缓存,但没有和我有共同属性设置为true,这也造成了失败。

<?xml version="1.0" encoding="UTF-8"?> 

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

    <diskStore path="java.io.tmpdir" /> 

    <!--<defaultCache eternal="true" maxElementsInMemory="50000" 
     overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="0" 
     timeToLiveSeconds="0" memoryStoreEvictionPolicy="LRU" 
     /> 
    --> 

    <cache name="genericDao" eternal="false" maxElementsInMemory="50000" 
     overflowToDisk="false" memoryStoreEvictionPolicy="LFU" /> 

    <cache name="reportDao" eternal="false" maxElementsInMemory="50000" 
     timeToIdleSeconds="28800" timeToLiveSeconds="28800" 
     overflowToDisk="false" memoryStoreEvictionPolicy="LFU" /> 


</ehcache> 

<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"> 
     <property name="configLocation" value="WEB-INF/ehcache/ehcache.xml"></property> 
     <property name="shared" value="true"></property> 
    </bean> 

    <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"> 
     <property name="cacheManager" ref="ehcache"></property> 
    </bean> 

如何在这种情况下提供独特的名称?

谢谢。

回答

1

创建具有不同名称的两个ehcache.xml中配置。