infinispan jdbc商店配置

时间:2016-10-03 11:02:22

标签: jdbc infinispan

我正在尝试将jdbc商店配置到Weather App示例infinispan教程中。 我这样配置:

    <?xml version="1.0" encoding="UTF-8"?>
<infinispan
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="urn:infinispan:config:8.2 http://www.infinispan.org/schemas/infinispan-config-8.2.xsd
                        urn:infinispan:config:jdbc:8.0 http://www.infinispan.org/schemas/infinispan-cachestore-jdbc-config-8.0.xsd"
      xmlns="urn:infinispan:config:8.2"
      xmlns:jdbc="urn:infinispan:config:jdbc:8.0">

  <jgroups>
     <stack-file name="external-file" path="jgroups2.xml"/>
  </jgroups>


      <cache-container default-cache="default">
         <transport cluster="WeatherApp" stack="external-file" />



          <distributed-cache name="default" mode="SYNC">
            <expiration lifespan="5000"/>
            <groups enabled="true">
              <grouper class="org.infinispan.tutorial.embedded.LocationWeather$LocationGrouper"/>
            </groups>


            <persistence>
              <jdbc:string-keyed-jdbc-store  fetch-state="false" read-only="false" purge="false">
                 <jdbc:connection-pool connection-url="jdbc:h2:mem:infinispan_string_based;DB_CLOSE_DELAY=-1" username="sa" driver="org.h2.Driver"/>
                 <jdbc:string-keyed-table drop-on-exit="true" create-on-start="true" prefix="ISPN_STRING_TABLE">
                    <jdbc:id-column name="ID_COLUMN" type="VARCHAR(255)" />
                    <jdbc:data-column name="DATA_COLUMN" type="BINARY" />
                    <jdbc:timestamp-column name="TIMESTAMP_COLUMN" type="BIGINT" />
                 </jdbc:string-keyed-table>
              </jdbc:string-keyed-jdbc-store>
           </persistence>

          </distributed-cache>


      </cache-container>

</infinispan>

但总是得到以下错误,无论我尝试什么:

Exception in thread "main" org.infinispan.commons.CacheConfigurationException: ISPN000327: Cannot find a parser for element 'string-keyed-jdbc-store' in namespace 'urn:infinispan:config:jdbc:8.0'. Check that your configuration is up-to date for this version of Infinispan.

我觉得我有一些明显的遗漏,但我自己也找不到。 我的错误在哪里?

谢谢,

2 个答案:

答案 0 :(得分:1)

看起来像infinispan教程的版本,你的infinispan库不同,请确保您的库和配置文件xsd版本相同

答案 1 :(得分:1)

我有同样的问题。这是目标命名空间的问题,而不是使用:

urn:infinispan:config:jdbc:8.0

使用:

urn:infinispan:config:store:jdbc:8.0

例如:

<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:infinispan:config:8.0" xmlns:jdbc="urn:infinispan:config:store:jdbc:8.0"
xsi:schemaLocation="urn:infinispan:config:8.0 http://www.infinispan.org/schemas/infinispan-config-8.0.xsd
                    urn:infinispan:config:store:jdbc:8.0 http://www.infinispan.org/schemas/infinispan-cachestore-jdbc-config-8.0.xsd">