J'utilise MQ Java PCF API pour récupérer des informations d'une installation MQ. Il existe plusieurs constructeurs pour la classe PCFMessageAgent. Il y en a un qui accepte le nom de l'hôte, du port et du canal. J'ai montré un extrait de la documentation.Pourquoi une erreur MQRC_NOT_AUTHORIZED est-elle générée lorsque j'essaie d'obtenir des informations de canal à l'aide de PCF?
PCFMessageAgent publique (host String, port int, canal String) lance MQException Initialise une nouvelle PCFMessageAgent avec une connexion client à un gestionnaire de files d'attente.
Le code est je
PCFMessageAgent agent = new PCFMessageAgent(host, port, "SYSTEM.DEF.SVRCONN");
PCFMessage pcfCmd = new PCFMessage(MQConstants.MQCMD_INQUIRE_CHANNEL);
pcfCmd.addParameter(MQConstants.MQCACH_CHANNEL_NAME, channelName);
PCFMessage[] pcfResponse = agent.send(pcfCmd);
mais j'obtiens une erreur MQRC_NOT_AUTHORIZED
Exception in thread "main" com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2035'.
at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:249)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnection(MQClientManagedConnectionFactoryJ11.java:450)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11.createManagedConnection(MQClientManagedConnectionFactoryJ11.java:487)
at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.java:97)
at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConnectionManager.java:194)
at com.ibm.mq.MQQueueManagerFactory.obtainBaseMQQueueManager(MQQueueManagerFactory.java:868)
Pourquoi ai-je cette erreur? Comment puis-je réparer ça.
Je l'ai trouvé dans les journaux d'erreurs. Toute aide sera très appréciée.
07/08/17 15:42:51 - Process(3294.15) User(user1) Program(amqrmppa)
Host(ubuntuvm-2) Installation(Installation1)
VRMF(8.0.0.7) QMgr(QM_FR2_2)
AMQ9777: Channel was blocked
EXPLANATION:
The inbound channel 'SYSTEM.DEF.SVRCONN' was blocked from address
'192.168.56.101' because the active values of the channel matched a record
configured with USERSRC(NOACCESS). The active values of the channel were
'CLNTUSER(user1)'.
ACTION:
Contact the systems administrator, who should examine the channel
authentication records to ensure that the correct settings have been
configured. The ALTER QMGR CHLAUTH switch is used to control whether channel
authentication records are used. The command DISPLAY CHLAUTH can be used to
query the channel authentication records.
----- cmqxrmsa.c : 1462 -------------------------------------------------------
07/08/17 15:42:51 - Process(3294.15) User(user1) Program(amqrmppa)
Host(ubuntuvm-2) Installation(Installation1)
VRMF(8.0.0.7) QMgr(QM_FR2_2)
AMQ9999: Channel 'SYSTEM.DEF.SVRCONN' to host '192.168.56.101' ended
abnormally.
EXPLANATION:
The channel program running under process ID 3294 for channel
'SYSTEM.DEF.SVRCONN' ended abnormally. The host name is '192.168.56.101'; in
some cases the host name cannot be determined and so is shown as '????'.
ACTION:
Look at previous error messages for the channel program in the error logs to
determine the cause of the failure. Note that this message can be excluded
completely or suppressed by tuning the "ExcludeMessage" or "SuppressMessage"
attributes under the "QMErrorLog" stanza in qm.ini. Further information can be
found in the System Administration Guide.
----- amqrmrsa.c : 930 --------------------------------------------------------
@Ajay Cela vous a-t-il aidé à résoudre votre problème? Si cela vous a été utile, veuillez voir "[Que dois-je faire lorsque quelqu'un répond à ma question?] (Https://stackoverflow.com/help/someone-answers)". En particulier, acceptez et votez si vous l'avez trouvé utile. – JoshMc
@Ajay, si vous n'êtes pas au courant, pour accepter une réponse, cliquez sur la coche grisée qui est en dessous de la flèche vers le bas du vote à gauche de la réponse. – JoshMc