我正在使用 XMS .NET 客户端 7.5 版本连接到 WebSphere 的多实例队列管理器。
并异步接收消息并订阅异常侦听器以接收 WMQ 连接上发生的任何异常。
为了测试队列管理器故障转移场景,我们终止了现有连接并关闭了活动队列管理器实例并启动了备用实例。在此操作过程中,连接的 XMS 客户端会调用附加的异常侦听器。Exception Listener方法里面的逻辑,重启连接。然后我们很好,我们再次开始在队列中接收消息。
但是,当多实例队列管理器中存在的所有 2 个实例(在我们的案例中为 2)一起重新启动时,我们没有看到调用了 Exception Listener 方法。因此,尽管队列中存在消息,但我们没有任何消息。
(后来我们关闭客户端应用程序并重新启动,然后我们开始接收消息。)
有了这个我的问题是:
这是我描述的场景中发生的例外情况吗?
如果是,即使在这种情况下,如何才能调用异常侦听器方法。我需要在 XMSC 类的连接工厂上设置任何设置吗?
还有我的最后一个问题。特定的 .NET XMS 客户端和一般的 JMS 客户端如何知道连接仍然有效?