添付ファイルのある文書の処理

Business Integration Connect には Attachment Data Handler が用意されており、これによって、Business Integration Connect と InterChange Server との間で送信される文書を処理できます。Attachment Data Handler は、XML トランスポート・エンベロープの内部で (添付ファイルのある場合もない場合も)、直列化形式とビジネス・オブジェクト表現との間で文書の形式を変換します。

次のいずれかの場合は、Attachment Data Handler をペイロード・データ・ハンドラーとして構成してください。

Attachment Data Handler は、次のいずれかの状況で呼び出される可能性があります。

呼び出し側のエンティティーがアダプターであるか Server Access であるかにかかわらず、呼び出し側のエンティティーは、XML トランスポート・エンベロープに格納された文書を受信すると、Attachment Data Handler を呼び出して、この文書をその適切なビジネス・オブジェクト表現に変換します。例えば、図 20 には、文書の直列化形式を文書のビジネス・オブジェクト表現に変換するために Attachment Data Handler を呼び出している Adapter for JMS が示されています。反対に、呼び出し側のエンティティーは、XML トランスポート・エンベロープに格納された文書のビジネス・オブジェクト表現を受信すると、Attachment Data Handler を呼び出して、このビジネス・オブジェクト構造を、その適切な文書形式に変換します。例えば、図 21 には、文書のビジネス・オブジェクト表現を文書の直列化形式に変換するために Attachment Data Handler を呼び出している Adapter for JMS が示されています。

このセクションでは、Attachment Data Handler に関する次の内容について説明します。

変換の実行

Attachment Data Handler は、この XML トランスポート・エンベロープの構造を解釈して、内部に格納されているデータと、対応するビジネス・オブジェクト表現との間の変換を次のように処理します。

文書からビジネス・オブジェクトへの変換

Business Integration Connect は、文書を InterChange Server に送信する前に、その内容を XML トランスポート・エンベロープでラップするかどうかを判別する必要があります。Business Integration Connect がトランスポート・エンベロープを作成した場合、ペイロードおよび添付ファイルは Base64 方式でエンコードされます。Business Integration Connect は、次に、XML トランスポート・エンベロープを、適切なトランスポート・レベルのヘッダーが付いた適切な ICS 互換コンポーネントに変換します。この ICS 互換コンポーネント (WebSphere Business Integration Adapter または Wrapper Data Handler) を構成して Attachment Data Handler を呼び出すと、XML でラップされた文書内にあるペイロードや添付ファイルから、対応するビジネス・オブジェクト表現への変換を処理できます。

XML トランスポート・エンベロープでラップされた文書をそのビジネス・オブジェクト表現に変換するため、呼び出し側のエンティティーは、Attachment Data Handler のインスタンスを生成して、それを (トランスポート・エンベロープ内にある) 文書に渡します。次に、Attachment Data Handler は、以下の手順を実行します。

  1. データ・ハンドラーの子メタオブジェクト内で定義されたコンテンツ・タイプ・マップをロードします。

    コンテンツ・タイプ・マップは、子メタオブジェクトの ContentTypeMap_x 構成プロパティーで定義されます。子メタオブジェクトは、Attachment Data Handler の構成情報を含むビジネス・オブジェクトです。このビジネス・オブジェクト内の属性は、コンテンツ・タイプ・マップをコンテンツ・タイプに関連付けます。詳細については、Attachment 子メタオブジェクトの作成を参照してください。

  2. 文書を検査して、この文書が XML トランスポート・エンベロープでラップされているかどうかを調べます。
  3. 変換して得られたペイロード・ビジネス・オブジェクトを設定して、このビジネス・オブジェクトを呼び出し側のエンティティーに戻します。

トランスポート・エンベロープ内に存在しない文書の処理

Attachment Data Handler は、XML トランスポート・エンベロープ内に文書が格納されていない と判断した場合、このエンベロープ構造からペイロード・データを抽出する必要はありません。このため、Attachment Data Handler は、(その子メタオブジェクト内に定義されている) PayloadDataHandlerMimeType 構成プロパティーを使用して、デフォルトのペイロード・データ・ハンドラーを示す MIME タイプを取得し、文書ペイロードのインスタンスを生成します。このデータ・ハンドラーは、ペイロード・データをこれに対応するペイロード・ビジネス・オブジェクトに変換し、得られたペイロード・ビジネス・オブジェクトをその呼び出し側のエンティティーに戻します。

トランスポート・エンベロープ内にある文書の処理

Attachment Data Handler は、XML トランスポート・エンベロープ内に文書が格納されていると判断した場合、ペイロードと添付ファイルを処理するために、先にこのエンベロープ構造からペイロードと添付ファイルを抽出する必要があります。このため、Attachment Data Handler は、次の手順に従って文書の処理および変換を実行します。

  1. トランスポート・エンベロープからペイロードおよび添付ファイルを抽出して、ペイロード・データをデコードします。

    ペイロードは、<payload> XML タグ内に含まれています。各添付ファイルは、<attachment> XML タグで囲まれています。

  2. コンテンツ・タイプ・マップを検索し、ペイロードのコンテンツ・タイプと一致するコンテンツ・タイプの有無を確認します。

    一致したコンテンツ・タイプ・マップに指定されている MIME タイプを使用して、データ・ハンドラーのインスタンスを生成します。このデータ・ハンドラーは、ペイロード・データをこれに対応するペイロード・ビジネス・オブジェクトに変換し、得られたビジネス・オブジェクトを Attachment Data Handler に戻します。

  3. ペイロードに対してコンテンツ情報ビジネス・オブジェクトを作成します。

    ペイロード・ビジネス・オブジェクト定義のビジネス・オブジェクト・レベルのアプリケーション固有情報を調べ、属性名が cw_mo_bcg_content_info タグで指定される、コンテンツ情報ビジネス・オブジェクトの名前を決定します。このコンテンツ情報ビジネス・オブジェクトのインスタンスを生成して、ペイロードのコンテンツ・タイプとエンコード方式について値を設定します。

  4. ペイロードに対して添付ファイル・コンテナー・ビジネス・オブジェクトを作成します。

    ペイロード・ビジネス・オブジェクトのビジネス・オブジェクト・レベルのアプリケーション固有情報を調べ、属性名が cw_mo_bcg_attachment タグで指定される、添付ファイル・コンテナー・ビジネス・オブジェクトの名前を決定します。添付ファイル・コンテナー・ビジネス・オブジェクトのインスタンスを生成して、ペイロード・ビジネス・オブジェクトの適切な属性に保管します。

    cw_mo_bcg_attachment タグが存在しない (または空である) 場合は、文書に添付ファイルが格納されていないものとみなします。したがって、これ以上の処理ステップは必要ありません。Attachment Data Handler は、変換済みのペイロード・ビジネス・オブジェクトを戻します。

  5. 添付ファイル・コンテナーに対して、デフォルト添付ファイル・ビジネス・オブジェクトを作成します。

    添付ファイル・コンテナー・ビジネス・オブジェクトのビジネス・オブジェクト・レベルのアプリケーション固有情報を調べ、属性名が cw_mo_bcg_default_attribute タグで指定される、デフォルト添付ファイル・ビジネス・オブジェクトの名前を決定します。デフォルト添付ファイル・ビジネス・オブジェクトのインスタンスを生成して、添付ファイル・コンテナー・ビジネス・オブジェクトの適切な属性に保管します。

  6. コンテンツ・タイプ・マップを検索し、添付ファイルのコンテンツ・タイプと一致するコンテンツ・タイプの有無を確認することにより、添付ファイルをビジネス・オブジェクトに変換する必要があるかどうかを調べます。

    添付ファイルからコンテンツ・タイプと文字セットのエンコード方式を取得して、コンテンツ・タイプ・マップ内に対応する項目があるかどうかを調べます。

ビジネス・オブジェクトから文書への変換

Business Integration Connect が InterChange Server から文書を受信する前に、ICS 互換コンポーネントは、ペイロードのビジネス・オブジェクト表現と添付ファイルを XML トランスポート・エンベロープでラップするかどうかを調べる必要があります。InterChange Server は、ビジネス・オブジェクトを適切な ICS 互換コンポーネントに送信し、ICS 互換コンポーネントが実際の変換に対処します。この ICS 互換コンポーネント (WebSphere Business Integration Adapter または Wrapper Data Handler) を構成して Attachment Data Handler を呼び出すと、ペイロードや添付ファイル・ビジネス・オブジェクトから、対応するペイロードや添付ファイルへの変換を処理できるだけでなく、XML トランスポート・エンベロープの作成も処理できます。

添付ファイル付きのペイロード・ビジネス・オブジェクトを、そのトランスポート・エンベロープ表現に変換するため、呼び出し側のエンティティーは、Attachment Data Handler のインスタンスを生成して、それをペイロード・ビジネス・オブジェクトに渡します。Attachment Data Handler は以下の手順を実行します。

  1. 構成メタオブジェクトで定義されたコンテンツ・タイプ・マップをロードします。

    コンテンツ・タイプ・マップは、子メタオブジェクトの ContentTypeMap_x 構成プロパティーで定義されます。子メタオブジェクトは、Attachment Data Handler の構成情報を含むビジネス・オブジェクトです。このビジネス・オブジェクト内の属性は、コンテンツ・タイプ・マップをコンテンツ・タイプに関連付けます。詳細については、Attachment 子メタオブジェクトの作成を参照してください。

  2. ビジネス・オブジェクトを検査して、XML トランスポート・エンベロープを作成するかどうかを判別します。
  3. 変換して得られたペイロードおよび添付ファイルのタグを Business Integration Connect 文書内に設定して、この文書を呼び出し側のエンティティーに戻します。

トランスポート・エンベロープのない文書の作成

Attachment Data Handler は、ペイロード・ビジネス・オブジェクトには XML トランスポート・エンベロープが必要ない と判断した場合、ペイロード・データをエンベロープ構造でラップする必要はありません。したがって、Attachment Data Handler は、デフォルトのペイロード・データ・ハンドラーを使用して、ペイロード・ビジネス・オブジェクトをこれに対応するペイロード文書に変換します。(Attachment Data Handler の子メタオブジェクト内に定義されている) PayloadDataHandlerMimeType 構成プロパティーには、ペイロード・ビジネス・オブジェクトのインスタンスを生成するために、デフォルトのペイロード・データ・ハンドラーを示す MIME タイプが格納されています。このデータ・ハンドラーは、ペイロード・ビジネス・オブジェクトを引き数として受信し、結果として得られたペイロード文書をその呼び出し側のエンティティーに戻します。

トランスポート・エンベロープを持つ文書の作成

Attachment Data Handler は、ペイロード・ビジネス・オブジェクトに XML トランスポート・エンベロープが必要 と判断した場合、ペイロードと添付ファイル文書をこのエンベロープ構造でラップする必要があります。このため、Attachment Data Handler は、次の手順に従ってビジネス・オブジェクトの処理および変換を実行します。

  1. ペイロードのコンテンツ・タイプと文字セットのエンコード方式を取得します。

    ペイロード・ビジネス・オブジェクトのビジネス・オブジェクト・レベルのアプリケーション固有情報にある cw_mo_bcg_content_info タグは、コンテンツ情報属性の名前を指定します。この属性には、ペイロードのコンテンツ・タイプとエンコード方式が格納されています。

    注:
    コンテンツ情報属性が存在しない場合は、(Attachment Data Handler の子メタオブジェクト内にある、PayloadDataHandlerMimeType 構成プロパティーに格納されている MIME タイプで指定される) デフォルトのデータ・ハンドラーを使用して、ペイロード・ビジネス・オブジェクトを変換します。
  2. コンテンツ・タイプ・マップを検索し、ペイロードのコンテンツ・タイプと一致するコンテンツ・タイプの有無を確認します。

    一致したコンテンツ・タイプ・マップに指定されている MIME タイプを使用して、ペイロード・データ・ハンドラーのインスタンスを生成します。このデータ・ハンドラーは、ペイロード・ビジネス・オブジェクトをこれに対応するペイロード文書に変換し、得られた文書を Attachment Data Handler に戻します。Attachment Data Handler は、ペイロード・データ・ハンドラーによって戻されたストリングを基に、Base64 方式を使用してバイト・データをエンコードし、結果を XML トランスポート・エンベロープのペイロード・タグに格納します。

  3. ペイロード・ビジネス・オブジェクトから添付ファイル・コンテナーを取得します。

    添付ファイル・コンテナーは、ペイロード・ビジネス・オブジェクトの添付ファイル・コンテナー属性に存在します。ペイロード・ビジネス・オブジェクトのビジネス・オブジェクト・レベルのアプリケーション固有情報には、cw_mo_bcg_attachment タグが格納されています。このタグは、添付ファイル・コンテナー属性を示しています。この属性には、添付ファイルが格納されています。

    cw_mo_bcg_attachment タグが存在しない (または空である) 場合は、文書に添付ファイルが格納されていないものとみなします。したがって、これ以上の処理ステップは必要ありません。Attachment Data Handler は、変換済みのペイロードをそのトランスポート・エンベロープに戻します。

  4. 添付ファイルをビジネス・オブジェクトと単なるデータのどちらで表現するかを、添付ファイルごとに指定します。

Attachment Data Handler の環境の設定

Business Integration Connect に付属する Attachment Data Handler を使用するには、以下の手順を実行します。

Attachment Data Handler の配置

Attachment Data Handler および関連リポジトリー・ファイルは、Business Integration Connect インストール・メディア上の、表 38 にリストされたロケーションで提供されています。

表 38. Attachment Data Handler のコンポーネントのロケーション
コンポーネント ロケーション
Attachment Data Handler
Integration/WBI/WICS/Attachment/
 bcgwbiattachmentdh.jar
 
リポジトリー・ファイル
Integration/WBI/WICS/Attachment/
 MO_DataHandler_DefaultAttachmentConfig.in
 

Web サーバーの資料に従って、ファイルを Web サーバーに配置します。

Attachment Data Handler のロケーションの指定

WebSphere InterChange Server は、Attachment Data Handler を実行時にロードできるように、そのロケーションを認識している必要があります。Attachment Data Handler のロケーションを指定するには、以下の手順を実行します。

  1. ICS 始動スクリプト start_server.bat を編集します。このスクリプトは、InterChange Server 製品ディレクトリーの bin サブディレクトリーにあります (InterChange Server が稼動しているマシン上)。
  2. このファイル内の CLASSPATH 変数に、Attachment Data Handler の JAR ファイルを追加します。

    Attachment Data Handler の JAR ファイル bcgwbiattachmentdh.jar を、ICS 始動時に組み込まれる JAR ファイルのリストに追加します。

Attachment Data Handler の構成

Attachment Data Handler を構成するには、構成ビジネス・オブジェクトを作成するための次の手順を実行します。

注:
Attachment Data Handler の添付ファイル関連ビジネス・オブジェクト定義も作成する必要があります。詳細については、添付ファイル関連のビジネス・オブジェクト定義の作成を参照してください。

Attachment 子メタオブジェクトの作成

Attachment Data Handler を構成するには、Attachment Data Handler が必要とするクラス名と構成プロパティーを提供するための子メタオブジェクトを作成しなければなりません。このメタオブジェクトを作成するには、表 39 に示す属性を含むビジネス・オブジェクト定義を作成します。WebSphere Business Integration Toolset の一部である Business Object Designer を使用して、このビジネス・オブジェクト定義を作成します。

子メタオブジェクトは Attachment Data Handler が必要とするクラス名と構成プロパティーを提供します。Business Object Designer ツール内で、ペイロード用の MIME タイプと、受信すると思われる添付ファイルのタイプ用の MIME タイプを含む子メタオブジェクトを作成します。

子メタオブジェクトの属性を表 39 に示します。Attachment Data Handler の子メタオブジェクトの例は、図 6 に示されています。

注:
この章に示すサンプル・ビジネス・オブジェクトには、WebSphere InterChange Server には必要であるが Attachment Data Handler には使用されない標準属性 (ObjectEventId など) は含まれていません

表 39. Attachment 子メタオブジェクトの構成プロパティー
属性名 説明
ClassName

クラス名 (必須)。次のデータ・ハンドラー・クラスを指しています。

com.ibm.bcg.DataHandlers.AttachmentDataHandler
 
ContentTypeMap_x

ペイロードのコンテンツ・タイプ・マップおよび XML ラッパーでの受信が予想される各種の添付ファイルのコンテンツ・タイプ・マップ。

詳細については、コンテンツ・タイプ・マップを参照してください。

PayloadDataHandlerMimeType 関連の添付ファイルが存在しない ペイロードを処理する、デフォルトのデータ・ハンドラーを示すために使用する MIME タイプ。

重要:
表 39 の属性に値を割り当てるには、属性のデフォルト値を設定してください。例えば、Attachment Data Handler がそのデフォルトのデータ・ハンドラーとして XML データ・ハンドラーを使用する場合は、PayloadDataHandlerMimeType 属性のデフォルト値を text/xml に設定してください。

コンテンツ・タイプ・マップ

コンテンツ・タイプ・マップを指定すると、関連のコンテンツ・タイプで形式が設定された情報を変換するために Attachment Data Handler が呼び出すデータ・ハンドラーが指定されます。例えば、ペイロードのコンテンツ・タイプが application/xml の場合、Attachment Data Handler は、ContentType 属性に値 application/xml が含まれているコンテンツ・タイプ・マップを検索します。一致するコンテンツ・タイプが見つからない場合、Attachment Data Handler は、関連の添付ファイルをビジネス・オブジェクトに変換しない ものとみなします。

表 41 に示すような属性レベルのアプリケーション固有情報により、これらのコンテンツ・タイプごとにコンテンツ・タイプ・マップを作成します。

コンテンツ・タイプ・マップを表す子メタオブジェクト内に属性を作成する場合は、以下の点を念頭においてください。

コンテンツ・タイプ・マップでは、エンコードの文字セットだけでなく、添付ファイルをビジネス・オブジェクトに変換するかどうかについても指定できます。子メタオブジェクト属性の説明および例については、Attachment 子メタオブジェクトの作成を参照してください。

例えば、文書内に次のコンテンツ・タイプがある場合を考えてください。


表 41. コンテンツ・タイプ・マップのサンプル
コンテンツ・タイプ 属性名 デフォルト値
text/xml ContentType_1 ContentType=text/xml;MimeType=myxml; CharSet=UTF-8;ConvertAttachment=false;
application/xml ContentType_2 ContentType=application/xml; MimeType=mynewxml;CharSet=UTF-16; ConvertAttachment=true;
application/octet-stream ContentType_3 ContentType=application/octet-stream; MimeType=myoctet

サンプル子メタオブジェクト

Business Integration Connect には、次に示す InterChange Server リポジトリー入力ファイルが用意されています。ここには、Attachment Data Handler の子メタオブジェクトのサンプルが格納されています。

ProductDir/Integration/WBI/WICS/Attachment/
 MO_DataHandler_DefaultAttachmentConfig.in
 

ここで、ProductDir は、Business Integration Connect 製品のインストール先のディレクトリーを表します。このリポジトリー・ファイルでは、MIME タイプが wbic_attachment で、関連の子メタオブジェクトが MO_DataHandler_DefaultAttachmentConfig である 1 つの Attachment Data Handler を定義します。図 6 には、Attachment Data Handler の子メタオブジェクトのサンプルを示します。このメタオブジェクトは、ContentTypeMap_1 および ContentTypeMap_2 の 2 つのコンテンツ・タイプ・マップを定義しています。

図 6. Attachment Data Handler のサンプル子メタオブジェクト


トップレベル・データ・ハンドラー・メタオブジェクトの更新

WebSphere Business Integration Adapter (Adapter for JMS など) は、MO_DataHandler_Default メタオブジェクトを使用して、使用可能なデータ・ハンドラーを確認します。

WebSphere Server Access は、同じ目的で MO_Server_DataHandler メタオブジェクトを使用します。

これらのメタオブジェクトのいずれかで、Attachment Data Handler に参照を追加します。

文書に格納されている MIME タイプと、これらの MIME タイプをサポートするデータ・ハンドラーとを関連付けるため、ICS 互換コンポーネントは、トップレベル・データ・ハンドラー・メタオブジェクトを参照します。表 42 には、データ・ハンドラーにアクセスする必要があるコンポーネントに応じて、トップレベル・メタオブジェクトの名前が要約されています。

表 42. InterChange Server のトップレベル・データ・ハンドラー・メタオブジェクト
WebSphere Business Integration のコンポーネント ICS 互換コンポーネント トップレベル・

データ・ハンドラー・メタオブジェクト

アダプター Adapter for XML、Adapter for HTTP、Adapter for JMS MO_DataHandler_Default
Server Access を使用するアクセス・クライアント
Connect サーブレット MO_Server_DataHandler

MO_Server_DataHandler または MO_DataHandler_Default メタオブジェクトに対し、以下の変更を加えます。

例えば、Attachment Data Handler が図 6 に示すように構成されているものとします。図 7 には、wbic_attachment MIME タイプと、MO_DataHandler_DefaultAttachmentConfig 子メタオブジェクトによって構成された Attachment Data Handler のインスタンスとを関連付ける属性を持つ、MO_DataHandler_Default メタオブジェクトを示します。このトップレベル・データ・ハンドラー・メタオブジェクトは、文書の MIME タイプ (text/xml) と XML データ・ハンドラーの子メタオブジェクトも関連付けます。

図 7. wbic_attachment MIME タイプと Attachment Data Handler との関連付け


サポートが必要なコンテンツ・タイプの一意の組み合わせごとに、この処理を繰り返します。このためには、Attachment Data Handler インスタンスに関連付けられた MIME タイプが属性名であり、関連の子メタオブジェクトの名前がタイプである、適切なトップレベル・データ・ハンドラー・メタオブジェクト内に属性を追加します。構成済みの MIME タイプ (およびその子メタオブジェクト) がトップレベル・メタオブジェクト内に存在することも確認してください。

添付ファイル関連のビジネス・オブジェクト定義の作成

XML トランスポート・エンベロープでラップされている文書を送信または受信する場合、ペイロード・ビジネス・オブジェクトには、添付ファイルの情報が格納されている必要があります。文書フローには、ペイロードが 1 つあり、必要に応じて複数の添付ファイルが存在します。Attachment Data Handler は、この添付ファイル情報が添付ファイル関連のビジネス・オブジェクト内に存在すると想定します。そこで、この情報を表現するためのビジネス・オブジェクト定義を作成する必要があります。ビジネス・オブジェクト定義は、InterChange Server が使用する情報の形式です。Business Object Designer ツールを使用して、ビジネス・オブジェクト定義を作成します。

図 8 には、XML トランスポート・エンベロープでラップされているペイロードのビジネス・オブジェクト構造を示します。

図 8. ペイロード・ビジネス・オブジェクトと添付ファイル・ビジネス・オブジェクトとの関係


図 8 に示すように、すべての添付ファイルは、添付ファイル・コンテナー・ビジネス・オブジェクトに格納されています。添付ファイルがある場合、ペイロード・ビジネス・オブジェクトには、添付ファイル・コンテナー・ビジネス・オブジェクトに対応する属性が存在します。

次の手順を実行して、ビジネス・オブジェクト構造に添付ファイル関連のビジネス・オブジェクトが含まれていることを確認します。

  1. バックエンド統合パッケージ化に必要なコンテンツ・タイプ・エンコード・プロパティーを保持するビジネス・オブジェクト定義を作成します。
  2. 添付ファイルの種類ごとにビジネス・オブジェクト定義を作成します。
  3. 添付ファイル・コンテナー・ビジネス・オブジェクトのビジネス・オブジェクト定義を作成します。
  4. ペイロード・ビジネス・オブジェクトのビジネス・オブジェクト定義を変更します。

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

コンテンツ情報の表現

関連のペイロードまたは添付ファイルのコンテンツ・タイプやエンコード方式を格納するには、コンテンツ情報ビジネス・オブジェクトを作成します。コンテンツ情報ビジネス・オブジェクト定義を作成するには、表 43 に示す属性を作成します。

表 43. コンテンツ情報ビジネス・オブジェクトの属性
属性 属性タイプ 説明 キー属性かどうか
contentType ストリング

関連のペイロードまたは添付ファイルのコンテンツ・タイプ。

はい
encoding ストリング 関連のペイロードまたは添付ファイルの文字エンコード方式。 いいえ

図 8 では、contentInfo_BusObj ビジネス・オブジェクト定義に、添付ファイルのコンテンツ・タイプやエンコード方式の属性が格納されています。これらの属性のすべてに、関連プロトコル・ヘッダーの名前を指定する属性レベルのアプリケーション固有情報があります。例えば、x-aux-sender-id 属性には次のようなアプリケーション固有情報セットがあります。

name=x-aux-sender-id
 

コンテンツ情報ビジネス・オブジェクト定義を識別する名前は、自由に選択できます。これが Content Type Encoding Business Object タイプであるかどうかは、添付ファイル・ビジネス・オブジェクトのアプリケーション固有情報によって決まります。図 8 に、contentType_BusObj というコンテンツ・タイプ・エンコード・ビジネス・オブジェクトの例を示します。

添付ファイル・データの表現

ビジネス・オブジェクトに変換されない添付ファイル・データの場合は、デフォルト添付ファイル・ビジネス・オブジェクトを作成します。このビジネス・オブジェクトは、トランスポート・エンベロープを基にした Base64 方式でエンコードされたデータを格納する場合に有益です。

デフォルト添付ファイル・ビジネス・オブジェクト定義を作成するには、以下の手順を実行します。


表 44. デフォルト添付ファイル・ビジネス・オブジェクトの属性
属性 属性タイプ 説明 キー属性かどうか
attachment ストリング

1 つの添付ファイル・データ。

注:
この属性は、ビジネス・オブジェクト定義のキー属性です。
はい

コンテンツ情報を保持するための属性。

ビジネス・オブジェクト

コンテンツ情報ビジネス・オブジェクトを保持するためのオプションの属性。この属性により、添付ファイル・データのコンテンツ・タイプとエンコード方式がわかります。この属性のカーディナリティーは 1 つです。

注:
この属性が存在しない 場合、Attachment Data Handler はビジネス・オブジェクトに添付ファイル・データを設定しません。

コンテンツ情報ビジネス・オブジェクトの形式の詳細については、コンテンツ情報の表現を参照してください。

いいえ

図 8 では、コンテンツ・タイプとエンコード方式を保持するため、defaultAttach_BusObj ビジネス・オブジェクト定義に、コンテンツ情報ビジネス・オブジェクトなど、1 つの添付ファイル・データの属性が格納されています。このデフォルト添付ファイル・ビジネス・オブジェクトが表す 1 つの添付ファイル・データには、contentType_attach 属性によって表される、コンテンツ・タイプ・エンコード方式が存在します。したがって、デフォルト添付ファイル・ビジネス・オブジェクト定義には、そのビジネス・オブジェクト・レベルのアプリケーション固有情報に、次のタグが含まれます。

cw_mo_bcg_content_info=contentType_attach
 

添付ファイルの表現

ビジネス・オブジェクトを変換する文書内の添付ファイルの種類ごとに、別個の 添付ファイル・ビジネス・オブジェクト定義を作成する必要があります。

添付ファイル・ビジネス・オブジェクト定義は、文書の添付ファイルの中の実際のデータを表します。添付ファイル・ビジネス・オブジェクト定義を作成するには、以下の手順を実行します。

  1. それぞれの添付ファイル・データごとに属性を作成します。

    属性タイプには、ストリング (単純ないくつかのデータの場合) またはビジネス・オブジェクト定義 (複雑なデータの場合) があると考えられます。

  2. 添付ファイルにコンテンツ・タイプ・エンコードが必要な場合は、次の手順を実行します。

図 8 では、ペイロード文書に、attachment1_BusObj ビジネス・オブジェクト定義によって表現される 1 つの添付ファイルがあります。この添付ファイルには、contentTypeEncoding 属性によって表現されるコンテンツ・タイプ・エンコードがあります。したがって、添付ファイル・ビジネス・オブジェクト定義では、そのビジネス・オブジェクト・レベルのアプリケーション固有情報に次のタグが含まれます。

cw_mo_bcg_content_info=contentTypeEncoding
 

添付ファイル・コンテナーの表現

添付ファイル・コンテナーには、トランスポート・エンベロープ内にある文書の添付ファイルがすべて格納されています。InterChange Server の添付ファイル・コンテナーを表現するには、添付ファイル・コンテナー・ビジネス・オブジェクトを作成する必要があります。添付ファイル・コンテナー・ビジネス・オブジェクト内の各属性は、1 つの添付ファイルを表現しています。

添付ファイル・コンテナー・ビジネス・オブジェクト定義を作成するには、以下の手順を実行します。

  1. ビジネス・オブジェクトに変換する文書の添付ファイルごとに、属性を追加します。

    これらの属性の属性タイプは、属性ごとに添付ファイル・ビジネス・オブジェクトに関連付けられます (添付ファイルの表現を参照)。各属性には、複数のカーディナリティーがあります。

  2. 属性を添付ファイルとして識別するため、各属性のアプリケーション固有情報に wbic_type タグを追加します。

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

    wbic_type=Attachment
     

    注:
    添付ファイル属性には、複数のカーディナリティーを保持できます。
  3. ビジネス・オブジェクトに変換できない 添付ファイル・データがペイロードに格納されている場合は、次の手順を実行します。

    重要:
    デフォルトの添付ファイル属性が存在しない場合、Attachment Data Handler は、関連のコンテンツ・タイプ・マップのない添付ファイル、またはビジネス・オブジェクトに変換されない添付ファイルを変換できません。これらの添付ファイルは、ビジネス・オブジェクト表現への変換時に失われます。

図 8 では、添付ファイル・コンテナーが attachContainer_BusObj ビジネス・オブジェクト定義によって表現されています。この添付ファイル・コンテナー・ビジネス・オブジェクト定義には、次の属性があります。

ペイロード・ビジネス・オブジェクト定義の変更

ペイロード・ビジネス・オブジェクト定義は、文書内の情報を表します。Business Integration Connect および InterChange Server 間で転送する各情報の属性が含まれています。ペイロード・ビジネス・オブジェクト定義の作成については、文書用ビジネス・オブジェクト を参照してください。

添付ファイルが含まれる文書を送信または受信する場合、ペイロード・ビジネス・オブジェクトには、添付ファイルの情報が格納されている必要があります。文書フローには、ペイロードが 1 つあり、必要に応じて複数の添付ファイルが存在します。文書のペイロードに添付ファイルが含まれている場合、以下のようにペイロード・ビジネス・オブジェクト定義を変更する必要があります。

Copyright IBM Corp. 1997, 2004