0

我将 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>

我得到异常:缓存 [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

我的配置有问题吗?

4

1 回答 1

1

我建议您阅读我对另一个问题的回答与您的非常相似,如果不一样的话

于 2017-08-18T14:23:29.863 回答