基于Spring的JMS Consumer在DB故障转移后无法启动

时间:2014-04-17 07:53:30

标签: java spring jms spring-jms oracle-aq

我正在为我的应用程序编写基于Spring的JMS使用者,在阳光明媚的日子里一切正常,但是如果数据库机重启其停止工作并且没有与DB连接,而其他数据库组件正在获得正确的数据库连接。还有一件事,如果我只重新启动oracle服务器的orcl服务工作正常,但如果我重新启动整个机器他们不工作。

1 个答案:

答案 0 :(得分:0)

根据文档,DefaultMessageListenerContainer在代理暂时不可用时完全自我恢复,意味着它将根据recoveryInterval值自动重新连接。

您可以在应用程序日志中看到以下或类似的异常:

ERROR DefaultMessageListenerContainer - Setup of JMS message listener invoker failed - trying to recover

如果是这样,那么检查连接工厂配置并尝试不使用连接工厂来连接缓存本身。即SingleConnectionFactoryCachingConnectionFactory