EHCache:缓存简单已经存在

时间:2013-05-08 04:14:31

标签: spring ehcache

如何解决异常:

这是一个配置:

     <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager" 
  p:cacheManager-ref="ehcache" lazy-init="true"/>

 <bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" 
     p:configLocation="ehcache.xml"  
     p:shared="true"/> 
</beans>

例外:

Caused by: net.sf.ehcache.ObjectExistsException: Cache simple already exists
at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:993) [ehcache-core-2.3.0.jar:]
at net.sf.ehcache.CacheManager.addCache(CacheManager.java:938) [ehcache-core-2.3.0.jar:]
at net.sf.ehcache.CacheManager.addCache(CacheManager.java:916) [ehcache-core-2.3.0.jar:]
at org.springframework.batch.admin.util.SimpleEhCacheInterceptor.afterPropertiesSet(SimpleEhCacheInterceptor.java:77) [spring-batch-admin-manager-1.2.2.BUILD-SNAPSHOT.jar:]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) [spring-beans-3.2.0.RELEASE.jar:3.2.0.RELEASE]

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题但是通过临时解决方案解决了。

我使用以下内容覆盖了spring-batch-admin-manager-1.2.1.RELEASE.jar!/META-INF/spring/batch/bootstrap/manager/jmx-context.xml中定义的bean。

<bean id="batchMBeanExporter" class="java.lang.String"/>
<bean id="mbeanExporter" class="java.lang.String"/>
<bean id="cacheInterceptor" class="java.lang.String"/>    

但是我仍然不确定为什么会出现这个问题以及上面的问题是如何解决的。