Данные не сохраняются в ModeShape 3.8
Недавно я начал работать над проектом с использованием ModeShape 3.8 и Infinispan 5.3. Оригинальный разработчик уже остался без какой-либо документации. Приложение работает нормально, если оно не перезапущено. Все данные были потеряны, как только он выключен. Может быть какое-то временное хранилище, но не уверен.
В pom.xml
- modeshape-JCR
- modeshape-JCR-апи
- modeshape-схематический
- modeshape-бом встраиваемый
- infinispan-жильный
В репо.json
{
"name":"repo",
"workspaces":{
"default":"default",
"allowCreation":true
},
"security":{"providers" : [
{
"name" : "Custom Provider",
"classname" : "security.CustomRepoAuthProvider"
}
]
},
"storage":{
"cacheConfiguration":"/conf/infinispan-conf.xml",
"cacheName":"filesystem"
}
}
В infinispan-conf.xml
http://www.infinispan.org/schemas/infinispan-config-5.3.xsd ">
<global>
<globalJmxStatistics enabled="false" allowDuplicateDomains="true"/>
</global>
<namedCache name="filesystem">
<transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup" transactionMode="TRANSACTIONAL" lockingMode="OPTIMISTIC"/>
<loaders passivation="false" shared="false" preload="true">
<fileStore fetchPersistentState="true" purgerThreads="3" purgeSynchronously="true" ignoreModifications="false" purgeOnStartup="false" location="/lfs/enve/apps/tomcat/temp/">
<async enabled="true" flushLockTimeout="15000" threadPoolSize="5" />
<singletonStore enabled="true" pushStateWhenCoordinator="true" pushStateTimeout="20000" />
</fileStore>
</loaders>
</namedCache>
Любое тело поможет мне???
2 ответа
В infinispan-conf.xml внесены следующие изменения
http://www.infinispan.org/schemas/infinispan-config-5.3.xsd">
<global>
<globalJmxStatistics enabled="false" allowDuplicateDomains="true"/>
</global>
<namedCache name="filesystem">
<locking isolationLevel="READ_COMMITTED"/>
<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL"
lockingMode="PESSIMISTIC"/>
<loaders
passivation="false"
shared="false"
preload="true">
<loader
class="org.infinispan.loaders.file.FileCacheStore"
fetchPersistentState="true"
ignoreModifications="false"
purgeOnStartup="false">
<properties>
<property name="location" value="/lfs/envd/apps/tomcat/temp/"/>
</properties>
</loader>
</loaders>
</namedCache>
Ваше хранилище файлов пишет в "/lfs/enve/apps/tomcat/temp/"
Я предполагаю, что вы удаляете временную директорию при перезапуске tomcat. Вы должны обязательно записать его в более "постоянный" каталог.