Я использую ehcache с JMS-репликацией и ActiveMQ в качестве JMS-сервера.В настоящее время он используется для кэширования результатов базы данных с помощью Hibernate 3.6.7
Мой cacheManager настроен, как указано выше:
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.jms.JMSCacheManagerPeerProviderFactory" properties="initialContextFactoryName=br.com.sonner.iss.jms.ExampleActiveMQInitialContextFactory,
providerURL=failover:tcp://localhost:6969,userName=XXX,password=YYYY,
replicationTopicConnectionFactoryBindingName=topicConnectionFactory,
replicationTopicBindingName=ehcache,
getQueueConnectionFactoryBindingName=queueConnectionFactory,
getQueueBindingName=ehcacheGetQueue"
propertySeparator=","
/>
Репликация и отработка отказа работают так, как должны.Если JMS выходит из строя (репликация останавливается) и запускается заново при повторном запуске JMS-сервера.
Единственная проблема, с которой я сталкиваюсь, заключается в том, что если JMS-сервер не работает в момент запускамое приложение.Приложение не запускается.
Возможно, потому что когда Spring поднимается, он читает конфигурации гибернации, а когда загружается hibernate, приложение просто останавливается в ожидании посредника.
Есть ли у кого-нибудь обходной путь?эта проблема?
Я думаю, есть ли способ использовать конфигурацию Spring jmsTemplate для настройки записей jhdi ehcache.xml.