#jdbc #infinispan
#jdbc #infinispan
Вопрос:
Я пытаюсь настроить хранилище jdbc в приложении погоды пример руководства 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.
Я думаю, что мне не хватает чего-то очевидного, но я не могу найти это самостоятельно.
В чем моя ошибка?
Спасибо,
Ответ №1:
Похоже на версию руководства infinispan, и ваши библиотеки infinispan не совпадают, пожалуйста, убедитесь, что версии xsd вашей библиотеки и файла конфигурации совпадают
Ответ №2:
У меня была такая же проблема. Это проблема с целевым пространством имен, вместо использования:
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">