Hi Martin,
Sounds like you have made some progress. I expect if you look in the AMQERR01.LOG of queue manager STAGING.MCI.INTFC.QMGR you will see an error message detailing the reason for the 2035 failure. This also proves you are now connecting to the correct queue manager!
You ask why you can connect with runmqsc and not with your application and the short answer is the difference in security requirements between a locally bound connection which is how you are using runmqsc, and a network connected (aka client connected) application. Security requirements are much more stringent for connections coming in over the network. Specifically, these security requirements ban (by default) the use of privileged users (those in the mqm group for example).
You have a few options here.
- Use a non-privileged user ID and set up the access it needs instead of relying on all access which is granted to mqm
- Use a locally bound connection for your application instead of a network/client connection
- Remove the stringent security requirements and allow your mqm group user id to be allowed in over a client connection
Which of these you wish to use will depend somewhat on your environment. Are you using a client connection because later you need to run this application on another machine? If so, stay with client connections, and look into a non-mqm user id, since your other machine will likely have a user ID not known to the queue manager machine. Are you just playing with things and don't really require strong security or is this a production system where security should remain strong?
We can help you with all of the above, but prefer to advise based on what your requirements are.
Cheers,
Morag
------------------------------
Morag Hughson
MQ Technical Education Specialist
MQGem Software Limited
Website:
https://www.mqgem.com------------------------------
Original Message:
Sent: Wed March 24, 2021 09:42 AM
From: Martin Cohen
Subject: Establishing a conection
Luc Michel, I have made some progress. I started up the destination channel and used localhost(1418) in the producer program. I am now getting a message code of 2035, which is an authorization error. I am a bit confused about this because from the command line I can enter runmqsc STAGING.MCI.INTFC.QMGR and do not get any error message, as the Web site for error 2035 indicates I should. See https://www.ibm.com/support/pages/connect-queue-manager-failed-reason-code-2035-mqrcnotauthorized-amq8135-not-authorized
------------------------------
Martin Cohen
Original Message:
Sent: Wed March 24, 2021 09:11 AM
From: Luc-Michel Demey
Subject: Establishing a conection
Try "mqrc 2538"
This will give you a hint about this error :
2538 0x000009ea MQRC_HOST_NOT_AVAILABLE
------------------------------
Luc-Michel Demey
DEMEY CONSULTING
lmd@demey-consulting.fr
Original Message:
Sent: Wed March 24, 2021 08:59 AM
From: Martin Cohen
Subject: Establishing a conection
Sorry, the message is now 2538. Does that mean that the queue must be started?
------------------------------
Martin Cohen
Original Message:
Sent: Tue March 23, 2021 07:14 PM
From: Morag Hughson
Subject: Establishing a conection
Do you know Fritzgerald Pierre-Louis? Because you have exactly the same queue manager as he does and exactly the same problem description.
Here is the reply I just sent him after he replied privately with the output from the dspmq command.
So it appears that you have two queue managers on your machine, one called STAGING.MCI.INTFC.QMGR which is the one you hope to connect to, and one called ICM. You tell the program that the hostname is just "localhost" without any port number, which will mean that it connects to localhost(1414).
Is it possible that port 1414 is actually the port the listener for queue manager ICM is using and that you should be providing a hostname in the application with a port number for the queue manager you wish to connect to.
If you don't know how to find out the port number in use by your queue manager, start up the runmqsc program for each queue manager in turn, and type in the following command:
DISPLAY LSSTATUS(*) PORT
Then change your application parameters to use localhost(nnnn) where nnnn is the port number for that queue manager.
Cheers,
Morag
------------------------------
Morag Hughson
MQ Technical Education Specialist
MQGem Software Limited
Website: https://www.mqgem.com
Original Message:
Sent: Tue March 23, 2021 10:44 AM
From: Martin Cohen
Subject: Establishing a conection
I am trying to run the SampleProducerCS program on a server where we have RFHUTIL installed. I am running the program as wmq and using the connection information from rfhutil. The program generates an exception 2058, meaning that it does not recognize the queue manager name.
Here is the contents of the rsp file:
simple
wmq
client
STAGING.MCI.INTFC.QMGR
localhost
DELTAFEED.OUT.AOC
test
------------------------------
Martin Cohen
------------------------------