les files d'attente de la liste IBM MQ avec nom d'utilisateur / mot de passe

boffman:

Je suis assez nouveau pour IBM MQ, mais je l'ai regardé des échantillons d'IBM et écrit un outil en Java qui peut lister les noms de file d'attente. J'utilise 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]));
}

Cela fonctionne très bien quand le MQ il n'y a pas d'autorisation nom d'utilisateur / mot de passe, mais quand cela est en place, je reçois le RC2035 d'erreur « MQRC_NOT_AUTHORIZED ».

Est-il possible d'authentifier en spécifiant le nom d'utilisateur / mot de passe en quelque sorte, en utilisant PCFAgent comme ça?

(Ou, est-il une autre façon d'authentifier et les files d'attente liste?)

Chrisli:

Vous pouvez utiliser le constructeur PCFAgent alternatif qui prend un objet MQQueueManager.

Pour les paramètres de connexion fixes et UserID / mot de passe lors de la création de l'objet MQQueueManager, soit l'utilisation de la classe MQEnvironment statique, ou de passer une table de hachage de propriétés souhaitées sur le constructeur 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);

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=232323&siteId=1
conseillé
Classement