Как настроить ehcache.xml для использования JMS + ActiveMQ + Tomcat и включить запуск tomcat, даже если сервер JMS не работает?

Я использую 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.

0 ответов

Другие вопросы по тегам