JMS の相互運用性ソリューション

     前  次    目次     
ここから内容

JMS 転送の使用

JMS は、すべてのサービス タイプのプロキシ サービスおよびビジネス サービス (転送型付きサービスのビジネス サービスを除く) の転送プロトコルとして選択できます。以下の各節で説明するように、プロキシ サービスおよびビジネス サービスは JMS 転送を使用するようにコンフィグレーションできます。

詳細については、『Oracle Service Bus Console の使い方』の「ビジネス サービス : 作成と管理」および「プロキシ サービス : 作成と管理」を参照してください。ビジネス サービスのエラー処理については、「エラー処理」を参照してください。

プロキシ サービスをコンフィグレーションする場合は、転送ヘッダ アクションを使用してメッセージのヘッダ値を設定できます。詳細については、「転送ヘッダ」を参照してください。

Oracle Service Bus の WebSphere MQ との相互運用性については、ネイティブ MQ 転送ユーザーズ ガイドの「WebSphere JMS MQ インタフェースの使用」を参照してください。

Oracle Service Bus では、サービスをコンフィグレーションする (または、必要に応じて WLS でカスタム ワーク マネージャをコンフィグレーションする) 際にデフォルトのディスパッチ ポリシーを使用できます。詳細については、『WS 転送ユーザーズ ガイド』の「WS 転送の使用」にあるワーク マネージャの作成を参照してください。

 


JMS 転送プロトコルを使用したプロキシ サービスのコンフィグレーション

プロキシ サービスをコンフィグレーションするときに、エンドポイント URI が次の形式の場合、JMS 転送プロトコルを選択できます。

jms://<host:port[,host:port]*/factoryJndiName/destJndiName>

ここで、各項目には以下のものを指定します。

JMS 送り先を複数のサーバにするには、次の URI の形式を使用します。jms://host1:port,host2:port/QueueConnectionFactory/destJndiName
ここで、 QueueConnectionFactory は接続ファクトリのキューの名前です。接続ファクトリのキューの定義方法の詳細については、『Administration Console オンライン ヘルプ』の「JMS システム モジュールのリソースのコンフィグレーション」を参照してください

JMS 転送プロトコルを使用してプロキシ サービスをコンフィグレーションするには、以下のフィールドに値を指定する必要があります。

[ディスパッチ ポリシー] : エンドポイントのディスパッチ ポリシーを指定します。デフォルトのディスパッチ ポリシーに加え、他のディスパッチ ポリシーも使用するには、WebLogic Server Administration Console でワーク マネージャをコンフィグレーションする必要があります。ワーク マネージャの詳細については、「ワーク マネージャを使用したスケジューリング済み作業の最適化」および WebLogic Server の『Administration Console オンライン ヘルプ』の「ワークマネージャの作成」を参照してください。

JMS 転送を使用したプロキシ サービスのコンフィグレーションの詳細については、『Oracle Service Bus Console の使い方』の「プロキシ サービス : 作成と管理」にある「JMS 転送コンフィグレーション ページ」を参照してください。

 


転送ヘッダ

JMS 転送に関連する各種のヘッダを表 3-1 に示します。順序単位ヘッダ (JMS_BEA_UnitOfOrder) を除き、すべてのヘッダは発信要求と着信応答の両方で共通になっています。

表 3-1 JMS 転送ヘッダ
ヘッダ
説明
JMSMessageID
JMSMessageID ヘッダ フィールドは、プロバイダによって送信されたメッセージをユニークに識別する値を格納します。
JMSDeliveryMode
JMSDeliveryMode ヘッダ フィールドは、メッセージの送信時に指定された配信モードを格納します。
JMSExpiration
このヘッダ フィールドは、送信メソッドで指定された存続時間と現在の GMT 値の合計として算出されるメッセージの有効期限を格納します。
JMSPriority
JMSPriority ヘッダ フィールドは、メッセージの優先度を格納します。
メッセージを送信すると、このフィールドは無視されます。送信操作が完了すると、メッセージを送信したメソッドによって指定された値が保持されます。
JMSType
JMSType ヘッダ フィールドは、メッセージの送信時にクライアントによって指定されたメッセージ タイプを格納します。
JMSCorrelation ID
メッセージを別のメッセージにリンクするために使用されます。たとえば、要求メッセージを応答メッセージにリンクできます。
JMSXAppID
JMS で定義されるプロパティの 1 つで、メッセージを送信するアプリケーションの ID を指定します。このプロパティは、JMS プロバイダによって設定されます。
JMSXGroupID
JMS で定義されるプロパティの 1 つで、メッセージが属するメッセージ グループのグループ ID を指定します。このプロパティは、クライアントによって設定されます。
JMSXGroupSeq
JMS で定義されるプロパティの 1 つで、メッセージ グループ内でのメッセージの順序を指定します。
JMS_IBM_Format
このフィールドは、アプリケーション データのネイチャを格納します。詳細については、「JMS_IBM_FORMAT」を参照してください。
JMS_IBM_Report_Exception
例外レポートを要求します。また、メッセージからレポート メッセージに保持する必要があるアプリケーション データの量も指定します。詳細については、「JMS_IBM_Report_Exception」を参照してください。
JMS_IBM_Report_Expiration
有効期限レポートを要求します。また、メッセージからレポート メッセージに保持する必要があるアプリケーション データの量も指定します。詳細については、「JMS_IBM_Report_Expiration (英文)」を参照してください。
JMS_IBM_Report_COA
到着時の確認レポートを要求します。また、メッセージからレポート メッセージに保持する必要があるアプリケーション データの量も指定します。詳細については、「JMS_IBM_Report_COA」を参照してください。
JMS_IBM_Report_COD
配信時の確認レポートを要求します。また、メッセージからレポート メッセージに保持する必要があるアプリケーション データの量も指定します。詳細については、「JMS_IBM_Report_COD (英文)」を参照してください。
JMS_IBM_Report_PAN
肯定アクション通知レポートを要求します。詳細については、「JMS_IBM_Report_PAN」を参照してください。
JMS_IBM_Report_NAN
否定アクション通知レポートを要求します。詳細については、「JMS_IBM_Report_NAN」を参照してください。
JMS_IBM_Report_Pass_Msg_ID
任意のレポート メッセージまたは応答メッセージのメッセージ ID を元のメッセージの ID と同じにすることを要求します。詳細については、「JMS_IBM_Report_Pass_Msg_ID」を参照してください。
JMS_IBM_Report_Pass_Correl_ID
任意のレポート メッセージまたは応答メッセージの相関 ID を元のメッセージの相関 ID と同じにすることを要求します。詳細については、「JMS_IBM_Report_Pass_Correl_ID」を参照してください。
JMS_IBM_Report_Discard_Msg
意図された送り先に配信できない場合にメッセージを破棄することを要求します。詳細については、「JMS_IBM_Report_Discard_Msg (英文)」を参照してください。
JMS_IBM_MsgType
メッセージのタイプ。詳細については、「JMS_IBM_MsgType」を参照してください。
JMS_IBM_Feedback
レポート メッセージのネイチャを示します。詳細については、「JMS_IBM_Feedback」を参照してください。
JMS_IBM_Last_Msg_In_Group
メッセージがメッセージ グループ内の最後のメッセージであるかどうかを示します。詳細については、「JMS_IBM_Last_Msg_In_Group」を参照してください。
JMS_BEA_UnitOfOrder

注意 : このヘッダは、着信応答に対してのみ有効です。

転送ヘッダのコンフィグレーション

メッセージ フローでは、着信要求および発信要求の両方について転送ヘッダをコンフィグレーションできます。JMS 転送に関連する転送ヘッダについては、「転送ヘッダ」を参照してください。

パイプラインで、転送ヘッダ アクションを使用してメッセージのヘッダの値を設定します。転送ヘッダ アクションの追加については、『Oracle Service Bus Console の使い方』の「転送ヘッダ アクションの追加」参照してください。

注意·:· JMS 転送ヘッダの制限については、『Oracle Service Bus Console の使い方』の「テスト コンソールでのランタイムによる転送設定の使用方法」および『Oracle Service Bus ユーザーズ ガイド』の メッセージ フローの作成にある「転送ヘッダ アクションで指定する転送ヘッダの値の制限」を参照してください。

 


JMS 転送プロトコルを使用したビジネス サービスのコンフィグレーション

ビジネス サービスをコンフィグレーションするときに、エンドポイント URI が次の形式の場合、JMS 転送プロトコルを選択できます。

jms://<host:port[,host:port]*/factoryJndiName/destJndiName >

ここで、各項目には以下のものを指定します。

JMS 送り先を複数のサーバにするには、次の URI の形式を使用します。jms://host1:port,host2:port/QueueConnectionFactory/destJndiName

ここで、QueueConnectionFactory は接続ファクトリのキューの名前です。接続ファクトリのキューの定義方法の詳細については、『Administration Console オンライン ヘルプ』の「JMS システム モジュールのリソースのコンフィグレーション」を参照してください

JMS ビジネス サービスを登録する場合、WSDL ファイルの URI をサービス定義に追加するときに、手動で編集する必要があります。URI の形式は次のとおりです。

jms://<host>:<port>/factoryJndiName/destJndiName

JMS 転送プロトコルを使用してビジネス サービスをコンフィグレーションするには、以下のフィールドに値を指定する必要があります。

注意 : ビジネス サービスで JMS ID による応答相関を使用するように JMS 要求/応答アプリケーションをコンフィグレーションするには、以下の作業を行う必要があります。

 


エラー処理

アプリケーション エラーおよび通信エラーを処理する JMS 転送ビジネス サービスは、以下のようにコンフィグレーションできます。


  ページの先頭       前  次