2016-12-19 10 views
2

Websphere 8.5.5上で実行されるSOAP over JMSベースのWebサービスがあります。 WebサービスはMQ要求メッセージを受信し、要求を処理して応答を返します。すべては順調です。SOAP/JMSベースのWebサービスのMQレスポンスメッセージにJMSExpirationTimeを設定する方法は?

MQレスポンスメッセージにJMSExpirationTimeを設定する必要があります。そのため、呼び出し元のアプリケーションがキューから「指定された時間」の応答を読み取らない場合、メッセージは期限切れになり、永遠に待ち行列に。

Webサービスは、JAX-RPCベースのSOAP over JMSです。私たちのSOAP Listsner MDBは、MQListenerMDB(com.ibm.ws.webservices.engine.transport.jms.JMSListenerMDB)の拡張であり、それ自身で有効期限を設定します。IF "MQ Request Messageに同じものが設定されている場合は、それ以外は0に設定されますこれは永遠です)。

メッセージはIBM APIによって準備されているため、MQ Response MessageにJMSExpirationTimeを設定するにはどうすればよいですか。

+0

「Websphere 8.5.5」と言ったら、正確にはどういう意味ですか? WebSphereは製品ではなくブランドです。それ自体で使用される場合、通常はWebSphere App Serverを意味します。一方、MQはWebSphere Brandを離れ、v8を持っていますが、v8.5.5はありません。 –

答えて

0

JMSListenerMDBは、メッセージの受信を担当します。返信が送信されるメッセージプロデューサと宛先も必要です。宛先が管理対象オブジェクトの場合は、そこに有効期限フィールドを設定できます。また、オブジェクトがインスタンス化された後、アプリケーション内で動的に設定することもできます。 MQナレッジセンターのExpiryページを参照してください。

アプリケーションが受信メッセージのReplyToフィールドから動的に宛先を作成する場合、メッセージごとに有効期限を設定するのが通例です。これを行うには、MQMessageProducerのKnowledge Centerドキュメントに記載されているメッセージプロデューサのsetTimeToLiveメソッドを呼び出します。

関連する問題