私はIBMキューにメッセージを送信する必要があります。何らかの理由でQueueManager内部に存在するキューが停止しているか、またはIBM MQブローカーがダウンしているか、ネットワークの問題があると、今Destinationがダウンしている場合、IBM MQメッセージを確実に送信するにはどうすればよいですか?
Session session = queueConnection.createSession(true,
QueueSession.AUTO_ACKNOWLEDGE);
Destination destination =
session.createQueue("test.queue");
MessageProducer producer = session.createProducer(destination);
TextMessage message = session.createTextMessage("test");
producer.send(message);
// Close the session
session.close();
- :私はとしてキューにメッセージをプッシュする通常のプロデューサークラスを書かれていますメッセージの送信に失敗します。
メッセージを送信するために自動的に再試行でき(基本的には再試行のメカニズム)、定義済みの回数だけ再試行してからメッセージをIBM MQブローカに送信するメカニズムがJMS/IBM MQにありますか?
リンクを指してくれてありがとうをなどを無効にしています。しかし、私のユースケースは、アプリケーションがTOMEEコンテナ内で実行されるということです。なんらかの理由でキューが利用できない場合、アプリケーションはTOMEE内で実行され、setClientReconnectOptionsを使用して自動再接続できますか? – Neer1009
はい、再接続オプションを有効にして接続が切断された場合、MQ JMSクライアントは再接続を試みます。 – Shashi