スタンドアロンの Java コードから ActiveMQ を使用して jms サーバーに接続しようとしていますが、次の例外に苦労しています。さまざまなオプションを試しましたが、根本的な原因を突き止めることができませんでした。
次のコード行で失敗しています。
jmsConnection.start();
私のブローカーの URL は次のとおりです。
tcp://localhost:7676?wireFormat.maxInactivityDuration=0
スタック トレースは次のとおりです。
javax.jms.JMSException: Channel was inactive for too long: localhost/127.0.0.1:7676
at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)
at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1206)
at org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1289)
at org.apache.activemq.ActiveMQConnection.start(ActiveMQConnection.java:456)
at com.bt.ccdr.dbtoqueue.DBToQueueHelperImpl.getJMSConnection(DBToQueueHelperImpl.java:172)
at com.bt.ccdr.dbtoqueue.DBToQueueHelperImpl.main(DBToQueueHelperImpl.java:42)
Caused by: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too long: localhost/127.0.0.1:7676
at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:225)
at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:83)
at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:100)
at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
at org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:74)
at org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:79)
at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1195)
... 4 more