捕获java中的MQ错误代码



我正在使用IBM MQ,在queue上放置消息时,我需要捕获错误代码,例如:

MQJE001: Completion Code '2' Reason '2035'

我的问题是读取这个错误代码,我的java程序通过以下方式读取输出:

BufferReader reader = new BufferReader(new InputStreamReader(processSH.getInputStream())); // processSH - the process that is putting message on queue

如果没有错误代码,我可以用这种方式读取输出,但我不能用读取

String line = null;
while(line.reader.readLine()) != null){
    system.out.println(line) // prints nothing in case of error
}

感谢所有的帮手!

我认为问题出在这段代码中:

String line = null;
while(line.reader.readLine()) != null){
    system.out.println(line) // prints nothing in case of error
}

我甚至不知道你是怎么编译的。reader不是String的一个性质。我认为这行应该是:

while(line = reader.readLine()) != null){

为了捕获这种exception,我使用了:

BufferReader errorReader = new BufferReader(new InputStreamReader(processSH.getErrorStream()));

在某些情况下,MQ错误可以是ErrorStream

希望有帮助,谢谢。

相关内容

最新更新