我有与hazelcast集成的spring-boot应用程序。现在我需要添加ehcache支持。@EnableCaching创建了Hazelcast CacheManager。我的目标是在ehcache3中使用@Cachable。
我尝试手动定义Ehcache CacheManager
@Bean
public CacheManager ehcache() {
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder().build();
cacheManager.init();
return cacheManager;
}但我有:
org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'ehcache' is expected to be of type 'org.springframework.cache.CacheManager' but was actually of type 'org.ehcache.core.EhcacheManager'.发布于 2018-02-20 21:38:47
对于Ehcache3,您必须使用JCacheCacheManager来包装Ehcache CacheManager并将其转换为Spring CacheManager。available here就是一个例子。
@Bean
public CacheManager cacheManager() {
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder().build(true);
JCacheCacheManager jCacheCacheManager = new JCacheCacheManager(cacheManager);
return jCacheCacheManager;
}https://stackoverflow.com/questions/48886351
复制相似问题