我正在研究一个监听Tibco队列的Java应用程序。该应用程序已有4年未被访问,但我在客户端日志中看到一个间歇性问题,其中连接被终止。我是Tibco和JMS的新手。
有人能解释一下吗?以下是我在日志中看到的异常消息:
javax.jms.JMSException: Connection has been terminated
at com.tibco.tibjms.TibjmsSession._getSyncMessage(TibjmsSession.java:1845)
at com.tibco.tibjms.TibjmsSession._receive(TibjmsSession.java:1735)
at com.tibco.tibjms.TibjmsMessageConsumer._receive(TibjmsMessageConsumer.java:209)
at com.tibco.tibjms.TibjmsMessageConsumer.receive(TibjmsMessageConsumer.java:355)发布于 2019-02-08 00:14:56
我熟悉JMS,但不熟悉Tibco。堆栈跟踪指示问题在客户端调用javax.jms.MessageConsumer.receive()时发生。此调用进入Tibco JMS客户端实现,从而产生Connection has been terminated消息。JMS规范没有定义伴随JMS异常的错误消息,因此此消息专门来自Tibco实现。我猜测可能是网络错误或连接超时。
我建议您检查Tibco EMS服务器日志,看看是否有任何相应的错误记录在那里,并直接与Tibco跟进,以了解可能导致此特定消息的情况。Tibco EMS不像ActiveMQ那样是开源的,所以像我这样的人不可能深入研究代码并弄清楚到底发生了什么。
https://stackoverflow.com/questions/54575178
复制相似问题