我正在测试WebLogic 10.3.1 JMS,但是存在问题。
我的测试步骤:
我期待的是一个例外,但没有任何出现和程序被绞死。程序停在:
sender.send(objMsg);
我添加了一些超时设置,但仍无效:
((WLProducerImpl) sender).setSendTimeout(1000);
((WLConnection) connection).setReconnectPolicy(JMSConstants.RECONNECT_POLICY_PRODUCER);
((WLConnection) connection).setReconnectBlockingMillis(1000);
在这种情况下有没有办法产生异常?非常感谢你。
最诚挚的问候, 克里斯
答案 0 :(得分:0)
您可以尝试在send方法中设置超时。类似于以下内容: sender.send(objMsg,Message.DEFAULT_DELIVERY_MODE,Message.DEFAULT_PRIORITY,10000);
答案 1 :(得分:0)
我怀疑WebLogic传输已挂起且未检测到服务器已经消失 - 并且传输在传输中被阻止。除非WebLogic JMS在内部使用单独的线程,否则没有超时会有所帮助。
恕我直言,WebLogic支持是唯一能够帮助你的人(看起来像个bug)。答案 2 :(得分:0)
请添加以下两个参数:
-Dsun.net.client.defaultConnectTimeout=30000
-Dsun.net.client.defaultReadTimeout=30000