コネクターは、以下のビジネス・オブジェクトを処理できます。
イベント処理のために、コネクターでは、同期および非同期の 2 種類の TLO を 使用することが可能です。このセクションでは、同期イベント処理 TLO について説明します。
図 4 は、同期イベント処理のためのビジネス・オブジェクト階層を示しています。要求オブジェクトおよび応答オブジェクトは必須であり、障害オブジェクト はオプションです。
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての基本的情報を提供します。図 5 は、同期イベント処理のためのサンプル TLO である SERVICE_SYNCH_OrderStatus のオブジェクト・レベルの ASI を表しています。
以下の表 5 では、同期イベント処理 TLO のためのオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_eventtlo=true |
この ASI プロパティーが true に設定されている場合、コネクターはこのオブジェクトをイベント処理に使用できる TLO として 扱います。 |
ws_collab=collabname |
この ASI は、どのコラボレーションを呼び出すのかをコネクターに指示します。この値はコラボレーションの名前です。 図 5 に示されているサンプルでは、コラボレーション名は SERVICE_SYNCH_OrderStatus_Collab です。 |
ws_verb=verb |
コネクターは、TLO をコラボレーションに引き渡す前に、TLO で動詞を設定するためにこの ASI を使用します。図 5 に示されているサンプルでは、動詞は Retrieve です。 |
ws_mode=synch |
イベント通知の際に、コネクターは、この ASI プロパティーを使用して、コラボレーションを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。同期処理の場合は、この ASI を synch に設定する必要があります。 デフォルトは asynch です。 |
それぞれの同期イベント処理 TLO は、属性および属性レベルの ASI を保有しています。図 6 は、サンプル TLO である SERVICE_SYNCH_OrderStatus の属性を表しています。また、この図には、属性レベルの ASI が「アプリケーション固有の情報 (App Spec Info)」列に表示されています。
表 6 は、同期イベント処理 TLO の要求、応答、障害、MimeType、Charset の各属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType | オプションの属性; 指定されると、その値は、同期応答を呼び出すデータ・ハンドラーの MIME タイプとして使用されます。 | |
Charset | String 型のこのオプショナル・パラメーターは、発信ビジネス・オブジェクトをメッセージに変換するときに、データ・ハンドラーに設定される 文字セットを指定します。注: この属性に指定される文字セット値は、応答メッセージの Content-Type プロトコル・ヘッダーには伝搬しません。 | |
Request |
ws_botype=request |
この属性は、HTTP サービス要求に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。 この属性は、同期イベント処理 TLO の場合には必須です。 |
Response |
ws_botype=response |
この属性は、HTTP サービスによって戻される応答に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが応答 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の応答属性がある場合は、コネクターは最初の応答属性の ASI を使用します。 この属性は、同期イベント処理 TLO の場合には必須です。 |
Fault | ws_botype=fault
ws_botype=defaultfault |
この属性は、同期イベント処理の場合のオプションであり、応答を正常に取り込むことができないときにコラボレーションから戻される障害メッセージに対応します。コネクターは属性名ではなく、この ASI を使用して、属性タイプが障害 BO であるかどうかを判別します。 |
要求ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合には必須です。要求ビジネス・オブジェクトは、オブジェクト・レベルの ASI を保有しています。同期イベント処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 7 に説明されています。要求ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、そのビジネス・オブジェクトは、動詞なしで戻されます。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。この ASI は、HTTP または HTTPS プロトコル・リスナーを指定します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
ws_tloname=tloname | この ASI は、このオブジェクトが属する TLO の名前を指定します。イベント処理の際に、コネクターは、この ASI を使用して、データ・ハンドラーによって引き渡された要求ビジネス・オブジェクトが TLO の子であるかどうかを判別します。引き渡された要求ビジネス・オブジェクトが TLO の子である場合は、コネクターは、指定された TLO を作成し、要求ビジネス・オブジェクトをその TLO の子として設定し、TLO のオブジェクト・レベルの ASI を使用して、この要求ビジネス・オブジェクトを、サブスクライブしているコラボレーションに引き渡します。 |
応答ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合には必須です。同期イベント処理のための応答ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 8 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。この ASI は、HTTP または HTTPS プロトコル・リスナーを指定します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
障害ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合にはオプションです。同期イベント処理のための障害ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 9 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。この ASI は、HTTP または HTTPS プロトコル・リスナーを指定します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
プロトコル構成 MO は、オプションとして、イベント処理用の要求、応答、または障害の各ビジネス・オブジェクトの子として組み込まれます。通常、プロトコル・ヘッダーおよびカスタム・プロパティーを (要求メッセージから) 読み取ったり、(応答または障害メッセージへ) 伝搬させたりする必要があるときに指定します。 前述のとおり、要求ビジネス・オブジェクトは、オプションでプロトコル構成 MO の名前をビジネス・オブジェクト・レベルの ASI として宣言します。
イベント処理中に、コネクターはプロトコル・リスナー (HTTP または HTTPS) を使用してトランスポートからイベントを検索します。 これらのイベントは、コラボレーションのサービスを要求する内部または外部のクライアント からのメッセージです。それぞれのトランスポートには、固有のヘッダー要件があります。コネクターは、プロトコル構成 MO を使用して、プロトコル固有のヘッダー情報をプロトコル・リスナーからコラボレーションへと転送します。プロトコル構成 MO の属性は、インバウンド・メッセージ内のヘッダーに対応します。コネクターは、インバウンド・メッセージの内容を使用して、これらの属性の値をビジネス・オブジェクト内に設定します。
HTTP(S) プロトコルの場合、プロトコル構成 MO の属性は次のとおりです。
属性 | 必須 | 型 | 説明 |
---|---|---|---|
Content-Type | なし | String | この属性の値は、発信メッセージの Content-Type ヘッダーを 定義します (メッセージの ContentType および発信メッセージ の 0 個以上の文字セットのパラメーターが含まれます)。構文は、HTTP プロトコルの Content-Type ヘッダーのものと同じです。例 : text/xml; charset=ISO-8859-4。Content-Type 属性が定義されていない場合、コネクターは、応答/障害メッセージの ContentType として要求の ContentType を使用します。 |
UserDefinedProperties | なし | ビジネス・オブジェクト | この属性は、ユーザー定義プロトコル・プロパティーのビジネス・オブジェクト を保持します。 |
1 つ以上の HTTP ヘッダー | なし | String | この属性を使用すると、ハンドラーは、指定された HTTP ヘッダーの値を受け渡したり、検索したりできます。 |
Authorization_UserId | なし | String | この属性は HTTP 基本認証の userID に対応します。 |
Authorization_Password | なし | String | この属性は HTTP 基本認証のパスワードに対応します。 |
これらの属性は、以下で説明されています。
プロトコル・リスナーの詳細については、プロトコル・リスナーを 参照してください (要求処理用のプロトコル構成 MO に ついては、同期要求処理 TLOを参照してください)。
オプションとして、HTTP(S) プロトコル構成 MO でカスタム・プロパティーを指定できます。 これを行うには、UserDefinedProperties 属性を組み込みます。この属性は、プロパティー値を持つ 1 つ以上の子属性を持つビジネス・オブジェクトに対応します。このビジネス・オブジェクトの各属性は、以下のようにメッセージ・ヘッダーの可変部分で読み取り (または、同期応答には書き込み) を行う 単一プロパティーを定義する必要があります。
表 11 は、これらの属性のアプリケーション固有情報を 要約したものです。
名前 | 値 | 説明 |
---|---|---|
ws_prop_name (大文字小文字を区別しない。指定されない場合、プロパティー名として属性名が使用されます) | 任意の有効なプロトコル・プロパティー名 | これはプロトコル・プロパティーの名前です。ベンダーによっては、拡張機能を提供するために 特定のプロパティーを予約している場合があります。 |
指定されたカスタム・プロパティー ASI (ws_prop_name) が無効で、このヘッダーを処理する論理的方法がない場合、コネクターは警告をログに記録し、このプロパティーを無視します。ws_prop_name に対する必要な検査が行われた後に、カスタム・プロパティーの値が設定も検索もされない場合、コネクターはエラーをログに記録し、イベントに失敗します。
UserDefinedProperties 属性が指定される場合、コネクターは、UserDefinedProperties ビジネス・オブジェクトのインスタンスを作成します。 次に、コネクターは、メッセージからプロパティー値を抽出し、ビジネス・オブジェクトに保管しようとします。少なくとも 1 つのプロパティー値が正常に検索されると、コネクターは、変更された UserDefinedProperties 属性をプロトコル構成 MO に設定します。
同期イベント処理の場合、UserDefinedProperties 属性が指定され、そのビジネス・オブジェクトがインスタンス化されると、コネクターは、この子ビジネス・オブジェクトの各属性を処理し、それに応じてメッセージ・プロパティー値を 設定します。
証明書伝搬のために、コネクターは HTTP プロトコル構成 MO の Authorization_UserId 属性 および Authorization_Password 属性をサポートします。このサポートは、HTTP 基本認証スキームの一部としての これらの証明書の伝搬に限られます。
HTTP または HTTPS プロトコル・リスナーが 許可ヘッダーを含む HTTP サービス要求を処理する場合は、リスナーはヘッダーを 解析して HTTP 基本認証に従うかどうか判別します。従う場合は、リスナーはユーザー名およびパスワードを 抽出し、Base64 を使用してデコードします。このデコードされたストリングは、コロンで区切られたユーザー名およびパスワードから構成されます。プロトコル・リスナーがプロトコル構成 MO で Authorization_UserId 属性 および Authorization_Password 属性を検出した場合、リスナーは、イベント許可ヘッダーから抽出した値をこれらの属性に設定します。
図 7 は、非同期イベント処理のためのビジネス・オブジェクト階層を示しています。要求オブジェクトのみが必須です。
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての基本的情報を提供します。図 8 は、非同期イベント処理のためのサンプル TLO である SERVICE_ASYNCH_TLO_Order のオブジェクト・レベルの ASI を表しています。
以下の表 5 では、非同期イベント処理 TLO のためのオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_eventtlo=true |
この ASI プロパティーが true に設定されている場合には、コネクターはこのオブジェクトをイベント処理用の TLO として扱います。 |
ws_verb=verb |
コネクターは、TLO をコラボレーションに引き渡す前に、TLO で動詞を設定するためにこの ASI を使用します。図 8 に示されているサンプルでは、動詞は Create です。 |
ws_mode=asynch |
イベント通知の際に、コネクターは、この ASI プロパティーを使用して、コラボレーションを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。非同期処理の場合は、この ASI を asynch に設定する必要があります。 デフォルトは asynch です。 |
それぞれの非同期イベント処理 TLO には、要求ビジネス・オブジェクトに対応する単一の属性が含まれています。図 9 は、サンプル TLO の SERVICE_ASYNCH_TLO_Order の要求属性、および属性の ASI を表しています。
表 13 は、非同期イベント処理 TLO の要求属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
Request |
ws_botype=request |
この属性は、要求に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。 この属性は、同期イベント処理 TLO の場合には必須です。 |
要求ビジネス・オブジェクトは、TLO の子であり、非同期イベント処理の場合には必須です。要求ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、そのビジネス・オブジェクトは、動詞なしで戻されます。非同期イベント処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 14 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。この ASI は、HTTP または HTTPS プロトコル・リスナーを指定します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
ws_tloname=tloname | この ASI は、このオブジェクトが属する TLO の名前を指定します。イベント処理の際に、コネクターは、この ASI を使用して、データ・ハンドラーによって引き渡された要求ビジネス・オブジェクトが TLO の子であるかどうかを判別します。引き渡された要求ビジネス・オブジェクトが TLO の子である場合は、コネクターは、指定された TLO を作成し、要求ビジネス・オブジェクトをその TLO の子として設定し、TLO のオブジェクト・レベルの ASI を使用して、この要求ビジネス・オブジェクトを、サブスクライブしているコラボレーションに引き渡します。 |
要求処理のために、コネクターでは、同期および非同期の 2 種類の TLO を 使用することができます。このセクションでは、同期要求処理 TLO について説明します。
図 10 は、同期要求処理のための TLO ビジネス・オブジェクト階層を示しています。要求オブジェクト、応答オブジェクト、およびハンドラー・オブジェクトは必須であり、障害オブジェクト はオプションです。イベント処理とは異なり、プロトコル構成 MO は、要求オブジェクトの場合には必須であり、応答および障害オブジェクトの場合には、オプションです。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての重要情報を提供します。図 11 は、同期要求処理のためのサンプル TLO である CLIENT_SYNCH_TLO_OrderStatus を表しています。
表 15 では、同期要求処理 TLO のためのオブジェクト・レベルの ASI について説明します。同期イベント処理 TLO のための ASI とは異なり、ws_collab、ws_verb、または ws_eventtlo ASI は、このレベルでの要求処理には必須ではありません。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_mode=synch |
要求処理の際に、コネクターは、この ASI プロパティーを使用して、HTTP サービスを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。synch が指定された場合、コネクターは応答を予期します。したがって、TLO には、要求および応答ビジネス・オブジェクト、およびオプションとして 1 つまたは 複数の障害オブジェクトを組み込む必要があります。 デフォルトは asynch です。 |
表 16 は、同期要求処理 TLO の属性および ASI について 説明しています。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType | なし |
この属性は、要求ビジネス・オブジェクトを要求メッセージに変換するために コネクターが呼び出すデータ・ハンドラーの MIME タイプを指定します。 メッセージ変換ルールの構成によっては、この値は、同期応答/障害メッセージをビジネス・オブジェクトに変換するときに使用される場合があります。 |
BOPrefix | なし | String 型のこの属性は、データ・ハンドラーに渡されます。 |
Handler | なし | この属性は、要求の処理に使用する プロトコル・ハンドラーを指定するもので、要求処理専用です。HTTP- HTTPS プロトコル・ハンドラーを指定する値 http を取ります。 デフォルトは http です。 |
Charset | String 型のこのオプショナル・パラメーターは、要求ビジネス・オブジェクトをメッセージに変換するときに、データ・ハンドラーに設定される 文字セットを指定します。注: この属性に指定される文字セット値は、要求メッセージの Content-Type プロトコル・ヘッダーには伝搬しません。 | |
Request |
ws_botype=request |
この属性は、要求ビジネス・オブジェクトに対応します。コネクターはこの属性 ASI を使用して、この TLO 属性のタイプが要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初に取り込まれた属性の ASI を使用します。 |
Response |
ws_botype=response |
この属性は、コラボレーションによって戻される応答に対応し、同期要求処理の場合には必須です。コネクターはこの ASI を使用して、この TLO 属性のタイプが応答 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。 |
Fault |
ws_botype=fault
または ws_botype=defaultfault |
この属性は同期要求処理の場合のオプションであり、応答を正常に取り込むことができないときに HTTP サービスから戻される障害メッセージに対応するものです。
コネクターはこの ASI を使用して、TLO の属性のタイプが障害 BO であるか どうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。障害メッセージが詳細要素である場合は、defaultfault ビジネス・オブジェクトが戻されます。defaultfault は、デフォルトのビジネス・オブジェクトの解決に使用されます。 |
要求ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合には必須です。要求ビジネス・オブジェクトは、オブジェクト・レベルの ASI を保有しています。
表 17 では、同期要求処理のための要求ビジネス・オブジェクトのオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | このオプショナル ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。 このプロトコル構成 MO は、HTTP-HTTPS プロトコル・ハンドラーの宛先を指定します。この ASI は、HTTP-HTTPS プロトコル・ハンドラーによって使用されます。 TLO 要求属性は、要求処理用の HTTP プロトコル構成 MO を持たなければならないことに注意してください。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
応答ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合には必須です。同期要求処理のための応答ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 18 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。 応答ビジネス・オブジェクトでオプションであるこのプロトコル構成 MO は、HTTP(s) プロトコル・ハンドラー用の応答メッセージのヘッダーを指定します。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
応答ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、応答ビジネス・オブジェクトが、動詞なしで戻されます。
障害ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合にはオプションです。同期要求処理のための障害ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 9 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。 障害ビジネス・オブジェクトでオプションであるこのプロトコル構成 MO は、HTTP-HTTPS プロトコル・ハンドラー用の応答メッセージのヘッダーを指定します。詳しくは、プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
要求処理の際に、HTTP-HTTPS プロトコル・ハンドラーは、ターゲット HTTP サービスの宛先を判別するために、HTTP プロトコル構成 MO を使用します。このプロトコル構成 MO は、要求ビジネス・オブジェクトの場合には必須です。 HTTP-HTTPS プロトコル・ハンドラーは、HTTP 1.0 POST 要求のみをサポートします。 表 20 に示すように、唯一の必須属性 (Destination) はターゲット HTTP サービスの完全 URL です。オプションの許可属性については、以下のセクションで説明します。
属性 | 必須 | 型 | 説明 |
---|---|---|---|
Destination | はい | String | ターゲット HTTP サービスの宛先 URL。HTTP-HTTPS プロトコル・ハンドラーは、この属性を使用して、HTTP サービスの宛先を判別します。 |
Content-Type | 要求ビジネス・オブジェクトでは必須。それ以外はオプション。 | String | この属性の値は、発信メッセージの Content-Type ヘッダーを 定義します (メッセージの ContentType およびオプションで発信メッセージ の文字セットが含まれます)。構文は、HTTP プロトコルの Content-Type ヘッダーのものと同じです。例 : text/xml; charset=ISO-8859-4。 |
Authorization_UserId | なし | String | この属性は HTTP 基本認証の userID に対応します。詳細については、要求処理用の HTTP 証明書伝搬を参照してください。 |
Authorization_Password | なし | String | この属性は HTTP 基本認証のパスワードに対応します。詳細については、要求処理用の HTTP 証明書伝搬を参照してください。 |
1 つ以上の HTTP ヘッダー | なし | String | この属性を使用すると、ハンドラーは、指定された HTTP ヘッダーの値を受け渡したり、検索したりできます。 |
UserDefinedProperties | なし | ビジネス・オブジェクト | この属性は、ユーザー定義プロトコル・プロパティーのビジネス・オブジェクト を保持します。詳細については、要求処理のユーザー定義プロパティーを参照してください。 |
MessageTransformationMap | なし | 単一カーディナリティー・ビジネス・オブジェクト | 0 個以上のメッセージ変換ルールを保持するビジネス・オブジェクトを指示する属性です。 このルールは、着信メッセージに適用される、ルールで指定された MIME タイプおよび文字セットに関する情報を保持しています。詳細については、メッセージ変換マップを参照してください。 |
HTTP プロトコル構成 MO 属性は、以下で説明されています。
オプションとして、HTTP プロトコル構成 MO でカスタム・プロパティーを指定できます。 これを行うには、UserDefinedProperties 属性を組み込みます。この属性は、プロパティー値を持つ 1 つ以上の子属性を持つビジネス・オブジェクトに対応します。このビジネス・オブジェクトの各属性は、以下のようにメッセージ・ヘッダーの可変部分で読み取り (または、同期応答には書き込み) を行う 単一プロパティーを定義する必要があります。
表 21 は、これらの属性のアプリケーション固有情報を 要約したものです。
名前 | 値 | 説明 |
---|---|---|
ws_prop_name (大文字小文字を区別しない。指定されない場合、プロパティー名として属性名が使用されます) | 任意の有効なプロトコル・プロパティー名 | これはプロトコル・プロパティーの名前です。ベンダーによっては、拡張機能を提供するために 特定のプロパティーを予約している場合があります。 |
指定されたカスタム・プロパティー ASI (ws_prop_name) が無効で、このヘッダーを処理する論理的方法がない場合、コネクターは警告をログに記録し、このプロパティーを無視します。ws_prop_name に対する必要な検査が行われた後に、カスタム・プロパティーの値が設定も検索もされない場合、コネクターはエラーをログに記録し、イベントに失敗します。
UserDefinedProperties 属性が指定され、そのビジネス・オブジェクトがインスタンス化されると、コネクターは、この子ビジネス・オブジェクトの各属性を処理し、それに応じてメッセージ・プロパティー値を 設定します。
同期要求処理で UserDefinedProperties 属性が指定されている場合、コネクターは、応答メッセージを受け取ると、UserDefinedProperties ビジネス・オブジェクト のインスタンスを作成し、メッセージからプロパティー値を抽出してから、それらを新規ビジネス・オブジェクト に保管しようとします。少なくとも 1 つのプロパティー値が正常に検索されると、コネクターは、変更された UserDefinedProperties ビジネス・オブジェクトをプロトコル構成 MO に設定します。
メッセージ変換マップ (MTM) 機能は、要求処理 HTTP(S) プロトコル・ハンドラーのみで サポートされています。MessageTransformationMap はプロトコル構成 MO のオプション属性であり、ビジネス・オブジェクトを指示します。ビジネス・オブジェクトには、ルールで指定された MIME タイプおよび文字セットを使用してメッセージを変換するルールが含まれています。 属性名 MessageTransformationMap (大文字小文字の区別がある) を見つけ、この属性のタイプがビジネス・オブジェクトである場合、コネクターは、そのオブジェクトのルールを使用してメッセージを変換します。
MTM 属性は、TransformationRule という名前の、カーディナリティー N の 1 つの子ビジネス・オブジェクト属性を持つ必要があります。 メッセージの TransformationRule を見つける場合、HTTP-HTTPS プロトコル・ハンドラーは、まず、すべての TransFormationRule で指定されている ContentType によって正確にメッセージを一致させようとします。失敗すると、コネクターが、複数のタイプのメッセージに適用されるルールを見つけようとします。 プロトコル・ハンドラー処理の詳細については、HTTP-HTTPS プロトコル・ハンドラー処理を参照してください。
TransformationRule ビジネス・オブジェクトの各インスタンスには、表 22 に示すように、属性を指定する必要があります。
属性名 | 必須 | 型 | デフォルト値 | 説明 |
---|---|---|---|---|
TransformationRule | なし | ビジネス・オブジェクト、カーディナリティー N | メッセージ変換用ルールを 1 つ保持する属性です。MessageTranformationMap 属性には、この属性の 0 個以上のインスタンスが存在する可能性があります。 | |
+ContentType | はい | String | */* | このプロパティーの値は、この変換ルールが適用されるメッセージの HTTP ContentType を指定します。この属性の デフォルト値 */* を使用すると、コネクターは、このルールを任意の ContentType に適用できます。 プロトコル・ハンドラー処理の詳細については、HTTP-HTTPS プロトコル・ハンドラー処理を参照してください。 プロトコル・ハンドラーは、他のルールと同じ ContentType を持った複数のルールを見つけると、警告をログに記録し、重複したすべてのルールを無視し、固有なルールを使用することに注意してください。 |
+MimeType | なし | このビジネス・オブジェクトで指定された ContentType のメッセージの処理中に、データ・ハンドラーの呼び出しで使用する MIME タイプ。 | ||
+Charset | なし | このビジネス・オブジェクトで指定された ContentType の要求を変換するときに使用する文字セット。 |
証明書伝搬のために、コネクターは HTTP プロトコル構成 MO の Authorization_UserId 属性 および Authorization_Password 属性をサポートします。このサポートは、HTTP 基本認証スキームの一部としての これらの証明書の伝搬に限られます。
コラボレーションは、プロトコル構成 MO の Authorization_UserId 属性 および Authorization_Password 属性の値を設定します。これらの属性が null でも空でもない場合は、コネクターは、ターゲット HTTP サービスに送信する要求に許可ヘッダーを作成します。HTTP/HTTPS プロトコル・ハンドラーは、許可ヘッダーの作成時に HTTP Authentication: Basic and Digest Access Authentication (RFC 2617) に従います。
図 12 は、非同期要求処理のためのビジネス・オブジェクト階層を示しています。 要求オブジェクトおよびハンドラー・オブジェクトが必須です。要求オブジェクトには、HTTP-HTTPS プロトコル・ハンドラーのプロトコル構成 MO が含まれています。これらについて、以下のセクションで説明します。
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。
図 13 は、非同期要求処理のためのサンプル TLO である CLIENT_ASYNCH_Order_TLO を表しています。
以下の表 23 では、非同期要求処理 TLO のオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_mode=asynch |
要求処理の際に、コネクターは、この ASI プロパティーを使用して、コラボレーションを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。非同期要求処理の場合は、この ASI を asynch に設定する必要があります。 デフォルトは asynch です。 |
表 24 は、非同期要求処理 TLO の要求属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType | なし |
この属性は、コネクターが呼び出すデータ・ハンドラーの MIME タイプ を指定します。この属性は要求処理のみに使用されます。 |
BOPrefix | なし | この属性の値はデータ・ハンドラーに渡されます。 |
Handler | なし | この属性は、要求の処理に使用する プロトコル・ハンドラーを指定するもので、要求処理専用です。要求を処理する HTTP-HTTPS プロトコル・ハンドラーを指定する値 http を取ります。 デフォルトは http です。 |
Charset | String 型のこのオプショナル・パラメーターは、要求ビジネス・オブジェクトをメッセージに変換するときに、データ・ハンドラーに設定される 文字セットを指定します。注: この属性に指定される文字セット値は、要求メッセージの Content-Type プロトコル・ヘッダーには伝搬しません。 | |
Request |
ws_botype=request |
この属性は、HTTP サービス要求ビジネス・オブジェクトに対応します。コネクターはこの属性 ASI を使用して、この TLO 属性のタイプが要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。 |
要求ビジネス・オブジェクトは、TLO の子であり、非同期要求処理の場合には必須です。非同期要求処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 25 に説明されています。
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_http=HTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。 このプロトコル構成 MO は、HTTP-HTTPS プロトコル・ハンドラーの宛先を指定します。この ASI は、HTTP-HTTPS プロトコル・ハンドラーによって使用されます。 TLO 要求属性は、要求処理用の HTTP プロトコル構成 MO を持たなければならないことに注意してください。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。 注: ビジネス・オブジェクト変換用に構成するデータ・ハンドラーは、cw_mo で始まる ASI を、変換するビジネス・データの一部としてではなく、メタデータとして読み取ることができる必要があります。XML データ・ハンドラーには、cw_mo メタデータを検出し、その値が指示する属性を無視する機能があります。 |
要求処理の際に、HTTP-HTTPS プロトコル・ハンドラーは、ターゲット HTTP サービスの宛先を判別するために、HTTP プロトコル構成 MO を使用します。このプロトコル構成 MO は、要求ビジネス・オブジェクトの場合には必須です。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。