0

我一直在使用 Infinispan 6.x,并且有几个 XML 配置文件。现在我想迁移到 7.x,但是当新版本尝试解析旧配置文件时出现异常。这是我的配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd">
  <global>
    <globalJmxStatistics enabled="false" mBeanServerLookup="dz.lab.cache.infinispan.DummyMBeanServer$DummyLoockup" />
  </global>
  <default>    
    <eviction strategy="NONE" />
    <expiration lifespan="-1" maxIdle="-1" />
    <clustering mode="local">
      <hash>
        <groups enabled="true" />
      </hash>
    </clustering>
    <transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.JBossStandaloneJTAManagerLookup" transactionMode="TRANSACTIONAL" lockingMode="OPTIMISTIC" />
    <invocationBatching enabled="true" />
    <locking supportsConcurrentUpdates="true" />    
  </default>
</infinispan>

和完整的堆栈跟踪:

org.infinispan.commons.CacheConfigurationException: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[7,11]
Message: Unexpected element 'global' encountered
    at org.infinispan.configuration.parsing.ParseUtils.unexpectedElement(ParseUtils.java:35)
    at org.infinispan.configuration.parsing.Parser70.readElement(Parser70.java:96)
    at org.infinispan.configuration.parsing.ParserRegistry.parseElement(ParserRegistry.java:133)
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:115)
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:102)
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:89)
    ... 30 more

如何迁移此配置?我在官方用户指南上找不到提示。

4

2 回答 2

3

升级指南可在此处找到。请将您的xml 架构升级到 7.0(或 7.1)并重新创建您的配置。global现在调用 xml 元素cache-container,这是一个示例

于 2015-01-20T08:02:33.537 回答
1

您的配置应如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<infinispan
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:infinispan:config:7.0 http://www.infinispan.org/schemas/infinispan-config-7.0.xsd"
        xmlns="urn:infinispan:config:7.0">
    <cache-container name="default" default-cache="defaultCache">
        <serialization />
        <jmx>
            <property name="enabled">true</property>
        </jmx>
        <local-cache name="defaultCache">
          ...
        </local-cache>
    </cache-container>
</infinispan>

查看所有事务、隔离、驱逐等元素的架构——这些非常相似。

于 2015-01-21T09:26:00.920 回答