Solving MQRC_NOT_CONVERTED problem: the easy way

In WebSphere MQ 7, IBM has changed the default Coded Character Set Identifier (CCSID)  and that may cause problems in certain conditions. I’ve encountered this problem while working on a Java application that used JMS to communicate with a legacy C/C++ application running on HP-UX. While the communication with other Java/JMS applications worked flawlessy, the communication with its non-JMS backed caused it to throw the MQRC_NOT_CONVERTED (reason code 2119) to be thrown.

This exception occurs because the queue manager failed to convert between different CCSIDs. Luckily, the problem is documented with great detail by IBM, along with several ways to resolve it. I’ve found that the easiest way to resolve the problem is by setting the following parameters during the JVM startup (you can replace 819 with target CCSID):

This solution, however, requires the application where the exception is thrown, to be running at least version 7.0.1.3.

A little more about logging

A friend of mine, who read the first article, asked me to elaborate further about good logging practices. Hence, I decide to go over some of them, point the problems and discuss the alternatives. I will try to discuss the items in the order they appeared on the article. To start this series of texts, let’s discuss about fancy logs.

Continue reading A little more about logging