I had been successfully using a json ccdt file to use runmqsc as a client. Because of a “.” it didn’t work when I used it elsewhere.
I had a directory of useful shell scripts. In this directory I had my mqclient.ini with
I had another directory with some shell scripts for some other applications. I used
export MQCLNTCF=/home/colinpaice/… to point to the mqclient.ini file.
When I used runmqsc -c QMA I got
AMQ8118E: IBM MQ queue manager does not exist.
In /var/mqm/errors/AMQERR01.LOG was the error message AMQ9518E: File ‘./ccdt.json’ not found.
This was because I had specified ChannelDefinitionDirectory=. instead of a fully qualified name. I had wrongly assumed that “.” meant the same directory as the mqclient.ini file.
The moral of this user error is to
- use a fully qualified directory instead of “.”
- or omit this parameter, and put the ccdt.json in the default location /var/mqm – but you may not have write access to this directory.
- and go to the bottom of the class.