在不同系统上,IBM Web MQ打印异常有所不同

时间:2018-10-02 12:33:23

标签: exception exception-handling websphere ibm-mq

我在多台计算机上运行同一软件,但是报告错误的方式不一致。

所有软件所做的工作就是打印出(例如)尝试连接到消息队列时抛出的异常。

某些机器使用文本描述报告错误

  

MQRC_DATA_LENGTH_ERROR ---> IBM.WMQ.MQException:MQRC_DATA_LENGTH_ERROR

其他人仅报告错误代码。

  

2538 ---> IBM.WMQ.MQException:2538

我不确定为什么会这样,但是我相信这与amqmdnet DLL从v8更新到v9有关。它似乎已在所有系统上正确配置,并且找不到使用中的任何v8 DLL。有什么我想念的吗?我应该去别的地方看看吗?我还能做些什么?

2 个答案:

答案 0 :(得分:0)

问题似乎是IBM MQ安装在报告带有文本描述错误的机器上,而不是其他机器上。

答案 1 :(得分:0)

是的,MQ V8和V9之间的MQException的“消息文本”可能有所更改。

您没有显示代码,但您只是在抛出异常吗?

catch (MQException e)
{
   System.Console.Out.WriteLine(e);
}

处理MQ异常的正确方法如下:

catch (MQException e)
{
   System.Console.Out.WriteLine("MQException CC=" + e.CompletionCode + " : RC=" + e.ReasonCode);
}