次のようにキューからメッセージを取得する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{}
}
ただし、問題は、キューにメッセージがない場合、2033例外がスローされることです。
2033 NO_MSG_AVAILABLE例外は、おそらく操作を停止する可能性のある重大な例外ではないと思います。
onMessage(Message msg)
ただし、キューに新しいメッセージがあるときはいつでも関数を呼び出したいと思います。
MessageListenerを使用してこのクラスを作成したいのですが、MessageListenerまたはそれに関連する例が見つかりません。
それで、WMQJavaAPIにMessageListener関数があるかどうか教えてください。
また
これを行う方法はありますか?