教科書のパターンは次のとおりです。
- JMS アプリがモバイル デバイスからリクエストを受信します。
- JMS アプリが返信先キューを開きます (動的な場合があります)。
- JMS アプリは、#2 の宛先を JMSREplyTo 宛先として指定する要求メッセージを準備します。
- JMS アプリケーションは、同期点の外部で要求を外部サービス プロバイダーに送信します。
- JMS アプリは、指定された待機間隔で応答をリッスンします。動的な返信先キューを使用した場合は、単純な受信を行います。複数のインスタンスが同じキューでリッスンしている場合 (外部サービスの場合が多い)、送信から返された JMSMessageID を受信で指定された JMSCorrelationID として使用します。
- JMS アプリは、外部サービスからの応答を受け取ります。
- JMS アプリがモバイル デバイスに応答します。
WMQ では、サービス プロバイダーからの予想される動作は、JMSMessageID を要求メッセージから応答の JMSCorrelationID にコピーすることであることに注意してください。送信者が JMSCorrelation ID を生成し、それを応答の JMSCorrelationID にコピーすることを要求することはあまり一般的ではありませんが、一部のアプリケーションはその動作を使用します。リクエスター アプリケーションの正しい動作を判断するには、サービス プロバイダーがこれをどのように処理するかを理解する必要があります。
完全な WMQ クライアント インストールを使用している場合は、これのほとんどを実行するサンプル コードが既に用意されています。デフォルトの場所にインストールされている場合は、次を参照してください...
C:\Program Files\IBM\Websphere MQ\tools\jms\samples\simple\simpleRequestor.java
...または/var/mqm
UNIX/Linux ディストリビューションの同等の場所。これは、単純に jar ファイルを取得するのではなく、完全なクライアントをインストールする多くの理由の 1 つです。クライアントをダウンロードする必要がある場合は、SupportPac MQC7として提供されます。