사용자 이름 / 암호를 사용하여 IBM MQ 목록 큐

boffman :

나는 IBM MQ 꽤 새로운 해요,하지만 난 IBM에서 샘플을 보면서 큐 이름을 나열 할 수 있습니다 자바 도구를 작성했습니다. 나는 PCFAgent을 사용하고 있습니다 :

PCFAgent agent = new PCFAgent(hostname, port, channelName);

PCFParameter[] parameters = { new MQCFST(CMQC.MQCA_Q_NAME, "*"),
   new MQCFIN(CMQC.MQIA_Q_TYPE, CMQC.MQQT_LOCAL)};

MQMessage[] responses = agent.send(CMQCFC.MQCMD_INQUIRE_Q_NAMES, parameters);
            MQCFH cfh = new MQCFH(responses[0]);

for (int i = 0; i < cfh.parameterCount; i++) {
    System.out.println (PCFParameter.nextParameter (responses [0]));
}

은 MQ에는 사용자 이름 / 암호 인증이없는 경우는 잘 작동하지만,이 자리에있을 때, 나는 오류 RC2035 "MQRC_NOT_AUTHORIZED"를 얻는다.

이 같은 PCFAgent를 사용하여, 어떻게 든 사용자 이름 / 암호를 지정하여 인증 할 수 있습니까?

(또는 인증하고 목록 큐 또 다른 방법은 무엇입니까?)

Chrisli :

당신은 MQQueueManager에의 오브젝트를 대체 PCFAgent 생성자를 사용할 수 있습니다.

세트 관련 파라미터 및 사용자 ID / 암호 MQQueueManager에 객체를 사용하거나 정적 MQEnvironment 클래스를 생성하거나 MQQueueManager에 생성자의 원하는 특성의 해시 테이블을 통과.

https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_8.0.0/com.ibm.mq.javadoc.doc/WMQJavaClasses/com/ibm/mq/MQQueueManager.html

https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_8.0.0/com.ibm.mq.javadoc.doc/WMQJavaClasses/com/ibm/mq/MQEnvironment.html

Hashtable<String, Comparable<?>> props = new Hashtable<String, Comparable<?>>();

props.put(MQConstants.TRANSPORT_PROPERTY, MQConstants.TRANSPORT_MQSERIES_CLIENT);
props.put(MQConstants.HOST_NAME_PROPERTY, hostname);
props.put(MQConstants.CHANNEL_PROPERTY, channel);
props.put(MQConstants.PORT_PROPERTY, new Integer(port));
props.put(MQConstants.USER_ID_PROPERTY, userName);
props.put(MQConstants.USE_MQCSP_AUTHENTICATION_PROPERTY, Boolean.TRUE);
props.put(MQConstants.PASSWORD_PROPERTY, password);

MQQueueManager qm = new MQQueueManager("MY.QM", props);

PCFAgent agent = new PCFAgent(qm);

추천

출처http://43.154.161.224:23101/article/api/json?id=232320&siteId=1