出于某种原因,我无法将expiry元素添加到ehcache3配置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'>
<service>
<jsr107:defaults>
<jsr107:cache name="people" template="heap-cache"/>
</jsr107:defaults>
</service>
<cache-template name="heap-cache">
<listeners>
<listener>
<class>org.terracotta.ehcache.EventLogger</class>
<event-firing-mode>ASYNCHRONOUS</event-firing-mode>
<event-ordering-mode>UNORDERED</event-ordering-mode>
<events-to-fire-on>CREATED</events-to-fire-on>
<events-to-fire-on>UPDATED</events-to-fire-on>
<events-to-fire-on>EXPIRED</events-to-fire-on>
<events-to-fire-on>REMOVED</events-to-fire-on>
<events-to-fire-on>EVICTED</events-to-fire-on>
</listener>
</listeners>
<expiry>
<ttl unit="seconds">10</ttl>
</expiry>
<resources>
<heap unit="entries">2000</heap>
<offheap unit="MB">100</offheap> <!-- unit of measure is case sensitive! -->
</resources>
</cache-template>
</config>
Run Code Online (Sandbox Code Playgroud)
错误消息是:
org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element 'expiry'. One of '{"http://www.ehcache.org/v3":heap, "http://www.ehcache.org/v3":resources, "http://www.ehcache.org/v3":heap-store-settings, "http://www.ehcache.org/v3":disk-store-settings, "http://www.ehcache.org/v3":service-configuration}' is expected.
Run Code Online (Sandbox Code Playgroud)
但是看看这个xsd:http: //www.ehcache.org/schema/ehcache-core.xsd 我没看到标签有什么问题,任何人都有任何想法?
的Ehcache 3严格执行XSD,所以内部的元件cache
或cache-template
必须按以下顺序:
key-type
value-type
expiry
eviction-advisor
loader-writer
listeners
resources
要么 heap
除了尺寸(位置7)之外,所有元素都是可选的,这在一个中是可选的cache-template
.
归档时间: |
|
查看次数: |
1132 次 |
最近记录: |