我是消息队列实施的新手。
我已经在我的应用程序中实现了IBM消息传递队列(MQ)。
问题陈述:
当此MQ无法处理一定数量的消息时,MQ抛出超时异常。
由于系统的技术限制,我无法捕获确切的异常类。
意味着我只是声明catch(Exception e)..但是我想确切地知道应该使用哪个异常类来处理超时错误。
答案 0 :(得分:1)
我认为您需要一些MQ培训,或者需要对MQ进行大量阅读。
MQPUT上没有超时。我会说您有一些编写不好的代码,并且使MQ与编写不好的代码混淆。您要记录所有交互吗?
如果您的代码是Java / JMS,则应具有以下异常:
catch (JMSException e)
{
System.err.println(e.getLocalizedMessage());
if (e != null)
System.err.println("getLinkedException()=" + e.getLinkedException());
}
如果您的代码是纯Java代码,则应具有以下异常:
catch (MQException e)
{
System.err.println(e.getLocalizedMessage());
System.err.println("CC = " + e.completionCode + " : RC = " + e.reasonCode + " [" + MQConstants.lookup(e.reasonCode, "MQRC_.*") +"]");
}