Lwi*_* Ko 0 java websphere-7 ibm-mq
我有MQConsumerClass,它从队列中检索消息,如下所示.
while (running)
{
try
{
MQMessage rcvMessage = new MQMessage();
MQGetMessageOptions gmo = new MQGetMessageOptions();
gmo.options = MQConstants.MQGMO_WAIT;
gmo.waitInterval = 60000;
queue.get(rcvMessage, gmo);
if(rcvMessage.getTotalMessageLength() > 0)
{
String msgText = rcvMessage.readUTF();
}
}
catch blocks{}
}
Run Code Online (Sandbox Code Playgroud)
但问题是当队列中没有消息时,会抛出2033异常.
我认为2033 NO_MSG_AVAILABLE异常不是严重的异常,可能会停止操作.
但是,我想onMessage(Message msg)在队列中有新消息时调用函数.
我想用MessageListener创建这个类,但我找不到MessageListener或任何与之相关的示例.
所以,请告诉我WMQ Java API中是否有任何MessageListener函数.
要么
任何方式这样做?
小智 5
2033'错误'实际上不是错误,它更像是MQSeries返回状态:MQRC_NO_MSG_AVAILABLE 2033 MQTester程序正在轮询队列以查找消息,但没有可用的消息.
你可以用它来排除它
MQException.logExclude(new Integer(MQException.MQRC_NO_MSG_AVAILABLE));
| 归档时间: |
|
| 查看次数: |
8904 次 |
| 最近记录: |