我正在尝试将EhCache配置为处理Apache Shiro启用的Web服务中的授权缓存。目前,我遇到以下异常:
org.apache.shiro.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:
1.使用CacheManager.create()静态工厂方法之一来重用具有相同名称的同一CacheManager或在必要时创建一个
2.在创建具有相同名称的新缓存管理器之前关闭先前的缓存管理器。
我的shiro.ini文件如下:
从这篇StackOverflow帖子中可以看出,使用Spring的人们通过强制CacheManager成为单例来解决了这个问题:Another unnamed CacheManager already exists in the same VM (ehCache 2.5)。
是否有人知道不使用Spring初始化的解决方法(我正在dropwizard框架中工作,不需要引入Spring)?是否有一些从shiro.ini中强制实现单例配置的方式?
提前谢谢!
org.apache.shiro.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:
1.使用CacheManager.create()静态工厂方法之一来重用具有相同名称的同一CacheManager或在必要时创建一个
2.在创建具有相同名称的新缓存管理器之前关闭先前的缓存管理器。
我的shiro.ini文件如下:
[main]
...
cacheManager = org.apache.shiro.cache.ehcache.EhCacheManager
cacheManager.cacheManagerConfigFile = classpath:ehcache.xml
securityManager.cacheManager = $cacheManager
从这篇StackOverflow帖子中可以看出,使用Spring的人们通过强制CacheManager成为单例来解决了这个问题:Another unnamed CacheManager already exists in the same VM (ehCache 2.5)。
是否有人知道不使用Spring初始化的解决方法(我正在dropwizard框架中工作,不需要引入Spring)?是否有一些从shiro.ini中强制实现单例配置的方式?
提前谢谢!