如何通过使用Java中的IBM MQ类连接到IBM MQ Server来访问所有队列管理器

问题描述

我一直在尝试通过提供没有队列管理器名称的服务器详细信息来查找IBM MQ Server内部的所有队列管理器。

这个想法是:

  • 我有一个包含服务器详细信息的属性文件-主机,端口号,通道,用户ID,密码
  • 使用此信息,我们需要连接到服务器并找到服务器中所有可用的队列管理器。
  • 我需要在Java中使用IBM MQ类。

由于我们可以找到队列管理器中的所有队列,因此我们可以类似地找到所有队列管理器吗?

解决方法

否。

诸如获取队列列表之类的PCF操作要求您首先连接到队列管理器。要获取机器上的队列管理器列表,需要使用OS级命令。可以完成的几种方法

  • 运行dspmq(如果您可以算出它可能在的位置-不能假设它总是在/ opt / mqm / bin中并且可能需要setmqenv为其提供一个可行的环境),然后解析输出
  • 直接解析/var/mqm/mqs.ini(在Windows上更具挑战性,在z / OS上甚至更具挑战性)。

如果您要远程进行操作,则必须将其包装在ssh之类的东西中。