JMS 用のビジネス・オブジェクト定義の作成

Adapter for JMS が InterChange Server との間で文書を送受信する際は、ペイロード・ビジネス・オブジェクト形式が使用されます。 Business Integration Connect の文書を送受信する際、Adapter for JMS は、ペイロード・データ・ハンドラーを呼び出して、このビジネス・オブジェクトを処理します。

したがって、表 75 に示すビジネス・オブジェクト定義を作成する際は、Adapter for JMS で前提としているペイロード・ビジネス・オブジェクト構造を表すように、これらのビジネス・オブジェクト定義を作成する必要があります。

表 75. Adapter for JMS のビジネス・オブジェクト定義
条件 ビジネス・オブジェクト定義 詳細の参照先
メッセージにパッケージ化なしまたはバックエンド統合パッケージ化を使用しており、同時に 文書に添付ファイルが含まれていない 場合

ペイロード・ビジネス・オブジェクト

JMS 用のペイロード・ビジネス・オブジェクト構造の作成
文書にバックエンド統合パッケージ化を使用している場合

メッセージ・ヘッダー情報を保持するビジネス・オブジェクト:

  • 動的メタオブジェクト
  • JMS プロパティー・ビジネス・オブジェクト

JMS ヘッダー情報の作成
文書に添付ファイルが含まれる場合 添付ファイルを表現する追加ビジネス・オブジェクトを作成する必要があります。 添付ファイル関連のビジネス・オブジェクト定義の作成

JMS 用のペイロード・ビジネス・オブジェクト構造の作成

JMS トランスポート・プロトコル用のペイロード・ビジネス・オブジェクト構造は、パッケージ化のタイプによって異なります。

注:
要求処理の場合、JMS トランスポート・プロトコルは、非同期の対話のみ をサポートすることができます。

要求ビジネス・オブジェクトを送信することはできますが、応答を取得することはできません。そのため、要求ビジネス・オブジェクト定義を作成する必要はありますが、応答用のビジネス・オブジェクト定義を作成する必要はありません。

JMS ヘッダー情報の作成

JMS トランスポート・プロトコルを通じてバックエンド統合パッケージ化を使用して文書を送信または受信する場合、要求ビジネス・オブジェクトには、カスタム・トランスポート・レベル・ヘッダー情報が含まれている必要があります。

Adapter for JMS は、このカスタム・ヘッダー情報が動的メタオブジェクト内に存在することを前提としています。

図 22 に、バックエンド統合パッケージ化を用いた Business Integration Connect 文書を表現する、要求ビジネス・オブジェクト用に Adapter for JMS が使用するビジネス・オブジェクト構造を示します。

注:
Adapter for JMS ユーザーズ・ガイド」では、この必要なビジネス・オブジェクト構造に関する情報を提供しています。ビジネス・オブジェクト定義を定義するときには、このガイドを参照してください。

図 22. 要求ビジネス・オブジェクトと JMS 動的メタオブジェクトとの関係


以下の手順を実行して、ビジネス・オブジェクト構造に動的子メタオブジェクトが含まれるようにします。

  1. バックエンド統合パッケージ化に必要な JMS プロパティーを保持するビジネス・オブジェクト定義を作成します。
  2. 動的メタオブジェクトのビジネス・オブジェクト定義を作成します。
  3. 要求ビジネス・オブジェクトが動的メタオブジェクトの属性を組み込むようにビジネス・オブジェクト定義を変更します。

この手順の各ステップについて、以下のセクションで説明します。

JMS プロパティー・ビジネス・オブジェクトの作成

JMS プロパティー・ビジネス・オブジェクト には、バックエンド統合パッケージ化で必要とされるトランスポート・レベル・ヘッダーに必要な JMS プロパティーが含まれています。また、コンテンツ・タイプ・ヘッダーを要求メッセージ内に設定することを指定する Content-Type 属性と、メッセージの長さをバイト単位で指定するコンテンツ長属性を含めることもできます。表 4 では、有効なトランスポート・ヘッダー・フィールドのそれぞれについて説明しています。

JMS プロパティー・ビジネス・オブジェクト定義を作成するには、以下の手順を実行します。

  1. 各トランスポート・レベル・ヘッダー・フィールドごとにビジネス・オブジェクト定義内部の属性を作成します。

    すべての属性の属性タイプをストリングにする必要があります。JMS メッセージの場合、表 76 に示すように、トランスポート・ヘッダー・フィールドの名前にはハイフンの代わりに下線を使用します。

  2. JMS プロパティー・ビジネス・オブジェクト定義内の各属性ごとに、関連属性の目的を示すアプリケーション固有情報を追加します。

    この属性レベルのアプリケーション固有情報の形式は、次のようになっていなければなりません。

    name=JMSproperty;type=string
     

    ここで、JMSproperty は、表 76JMS プロパティー名列の値のいずれかです。

  3. JMS プロパティー・ビジネス・オブジェクト定義内のどの属性でも、そのトランスポート・レベル・フィールド用の一般的な (または唯一の有効な) 値を示すデフォルト値を追加することができます。

表 76. JMS プロパティー・ビジネス・オブジェクト定義の属性
トランスポート・ヘッダー・フィールド JMS プロパティー名
x-aux-sender-id x_aux_sender_id
x-aux-receiver-id x_aux_receiver_id
x-aux-protocol x_aux_protocol
x-aux-protocol-version x_aux_protocol_version
x-aux-process-type x_aux_process_type
x-aux-process-version x_aux_process_version
x-aux-create-datetime x_aux_create_datetime
x-aux-msg-id x_aux_msg_id
x-aux-production x_aux_production
x-aux-system-msg-id x_aux_system_msg_id
x-aux-payload-root-tag x_aux_payload_root_tag
x-aux-process-instance-id x_aux_process_instance_id
x-aux-event-status-code x_aux_event_status_code
x-aux-third-party-bus-id x_aux_third_party_bus_id
x-aux-transport-retry-count x_aux_transport_retry_count
content-type content_type
content-length content_length

注:
表 76 では、バックエンド統合に必要なヘッダーを完全に網羅したリストを提供していません。ヘッダーの詳細なリストと説明については、トランスポート・レベル・ヘッダーの内容を参照してください。トランスポート・ヘッダー・フィールド名内のハイフンは下線に置き換えてください。

図 22 では、JMSProps_BusObj ビジネス・オブジェクト定義にはさまざまなトランスポート・レベル・ヘッダー・フィールドの属性が含まれています。これらの属性のすべてに、関連プロトコル・ヘッダーの名前を指定する属性レベルのアプリケーション固有情報があります。例えば、x_aux_sender_id 属性には次のようなアプリケーション固有情報セットがあります。

name=x_aux_sender_id;type=string
 

JMS 動的メタオブジェクトの作成

この動的メタオブジェクトには、Adapter for JMS の構成情報を所有する子ビジネス・オブジェクトが含まれます。動的メタオブジェクトのビジネス・オブジェクト定義を作成するには、以下の手順を実行します。

  1. JMSProperties という名前の属性を作成します。その属性タイプは、JMS プロパティー・ビジネス・オブジェクトのビジネス・オブジェクト定義です (JMS プロパティー・ビジネス・オブジェクトの作成参照)。
  2. 必要に応じて他の構成プロパティーを追加します。動的メタオブジェクトの有効な属性については、「Adapter for JMS ユーザーズ・ガイド」を参照してください。動的メタオブジェクトを構成するための属性の作成方法については、このガイドを参照してください。

Adapter for JMS を Business Integration Connect とともに動作させるためには、動的メタオブジェクトのビジネス・オブジェクト定義には、JMSProperties という名前の属性を組み込む必要があります。この属性の属性タイプは、JMS プロパティー・ビジネス・オブジェクトのビジネス・オブジェクト定義です (JMS プロパティー・ビジネス・オブジェクトの作成参照)。例えば、図 22 では、JMSDynMO_BusObj ビジネス・オブジェクト定義にはさまざまな構成プロパティー (図示せず) が含まれ、また JMSProperties 属性が組み込まれています。

要求ビジネス・オブジェクト定義の変更

ビジネス・オブジェクト構造を要求ビジネス・オブジェクトに取り込むには、要求ビジネス・オブジェクト定義に以下の変更を加える必要があります。

  1. 動的子メタオブジェクトを保持する属性を要求ビジネス・オブジェクト定義に追加します。

    この属性の属性タイプは、動的メタオブジェクトのビジネス・オブジェクト定義です (JMS 動的メタオブジェクトの作成参照)。

  2. 要求ビジネス・オブジェクト定義のビジネス・オブジェクト・レベルのアプリケーション固有情報に、動的メタオブジェクトを含む属性を示す cw_mo_conn タグを追加します。

    cw_mo_conn タグの形式は、次のようになっています。

    cw_mo_conn=dynamicMetaObjAttr
     

    ここで、dynamicMetaObjAttr は、動的メタオブジェクトを保持する要求ビジネス・オブジェクト内の属性の名前です。

例えば、図 22 では、JMSDynMO という名前の属性が要求ビジネス・オブジェクト定義 WBIC_JMSRequest_BusObj に追加されています。この属性には、タイプ JMSDynMO_BusObj の子ビジネス・オブジェクトである動的メタオブジェクトが含まれています。さらに、この動的メタオブジェクトを識別するため、要求ビジネス・オブジェクトのアプリケーション固有情報は、次のような cw_mo_conn タグを組み込むように変更されています。

cw_mo_conn=JMSDynMO
 

Copyright IBM Corp. 1997, 2004