我将SpringFramwork与Ehcache 3.x集成,并在 ehcache.xml 中指定键/值类型时出现异常。这是我的配置:
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.ehcache.org/v3" xmlns:jsr107="http://www.ehcache.org/v3/jsr107"
xsi:schemaLocation="http://www.ehcache.org/v3 http://www.ehcache.org/schema/ehcache-core-3.0.xsd http://www.ehcache.org/v3/jsr107 http://www.ehcache.org/schema/ehcache-107-ext-3.0.xsd">
<persistence directory="${user.home}/.ehcache" />
<cache alias="mycache">
<key-type>java.lang.String</key-type>
<value-type>java.lang.String</value-type>
<resources>
<offheap unit="GB">1</offheap>
<heap unit="MB">300</heap>
<disk unit="GB" persistent="true">10</disk>
</resources>
</cache>
我得到异常: Cache [XXX]指定键/值类型。使用getCache(String,Class,Class)。 这是堆栈跟踪:
Caused by: java.lang.IllegalArgumentException: Cache [homeFeeds] specifies key/value types. Use getCache(String, Class, Class)
at org.ehcache.jsr107.Eh107CacheManager.getCache(Eh107CacheManager.java:297)
at org.springframework.cache.jcache.JCacheCacheManager.loadCaches(JCacheCacheManager.java:105)
at org.springframework.cache.support.AbstractCacheManager.initializeCaches(AbstractCacheManager.java:61)
at org.springframework.cache.support.AbstractCacheManager.afterPropertiesSet(AbstractCacheManager.java:50)
at org.springframework.cache.jcache.JCacheCacheManager.afterPropertiesSet(JCacheCacheManager.java:97)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624)
... 35 more
我的配置出了什么问题?