通过Java的PCF请求获取连接到IBM MQ队列的使用者的ip

时间:2015-11-03 06:58:01

标签: java ibm-mq pcf

我知道MQExplorer GUI可以通过某个频道显示连接到某个队列的人以及有关此连接的其他信息,但我没有在PCF中找到任何可以从Java那里做到的事情。

如果它们存在,请提前感谢命令和示例!

2 个答案:

答案 0 :(得分:3)

这显示了示例代码段显示了如何检索conname

// Create the PCF message type for the inquire.
PCFMessage pcfCmd = new PCFMessage(MQConstants.MQCMD_INQUIRE_Q_STATUS);
// Add queue name
pcfCmd.addParameter(MQConstants.MQCA_Q_NAME, "MYQ");
// We want Q HANDLE attributes
pcfCmd.addParameter(MQConstants.MQIACF_Q_STATUS_TYPE, MQConstants.MQIACF_Q_HANDLE);
// We want to retrieve only the connection name
pcfCmd.addParameter(MQConstants.MQIACF_Q_STATUS_ATTRS, MQConstants.MQCACH_CONNECTION_NAME);
// Execute the command. The returned object is an array of PCF messages.
PCFMessage[] pcfResponse = pcfCM.agent.send(pcfCmd);

try{
    for(int i = 0; i < pcfResponse.length;i++){
        String name = (String) pcfResponse[i].getParameterValue(MQConstants.MQCACH_CONNECTION_NAME);
        System.out.println("Connection Name: " + name);         
        }
    }catch(Exception ex) {
    System.out.print(ex);
}

您可以根据需要修改代码段。希望它有所帮助。

答案 1 :(得分:0)

您在MQ Explorer中看到的是MQSC命令:

DISPLAY QSTATUS(<QName>) TYPE(HANDLE)

因此,您需要查找等效的PCF命令。