コネクターは、以下の 2 種類のビジネス・オブジェクトを処理します。
イベント処理のために、コネクターでは、同期および非同期の 2 種類の TLO を使用することが可能です。このセクションでは、同期イベント処理 TLO について説明します。
図 4 は、同期イベント処理のためのビジネス・オブジェクト階層を示しています。要求オブジェクトおよび応答オブジェクトは必須であり、障害オブジェクトはオプションです。
図 4. 同期イベント処理のためのビジネス・オブジェクト階層
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての基本的情報を提供します。図 5 は、同期イベント処理のためのサンプル TLO である SERVICE_SYNCH_OrderStatus のオブジェクト・レベルの ASI を表しています。
図 5. 同期イベント処理のためのトップレベル・ビジネス・オブジェクト
以下の表 5 では、同期イベント処理 TLO のためのオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_eventtlo=true |
この ASI プロパティーが true に設定されている場合には、コネクターはこのオブジェクトをイベント処理専用の TLO として扱います。
WSDL 構成ウィザードがこの ASI を使用して、ビジネス・オブジェクトが TLO であるかどうかを判別することに注意してください。これについての詳細は、WSDL 構成ウィザードを参照してください。
|
ws_collab=collabname |
この ASI は、どのコラボレーションを呼び出すのかをコネクターに指示します。この値はコラボレーションの名前です。(この ASI は、WSDL の生成時にコラボレーション用の TLO を判別するためにも使用されます。詳しくは、WSDL 構成ウィザードを参照してください。)
図 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 の Request、Response、Fault、MimeType、および Charset の各属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType |
| オプションの属性: 指定されていると、その値は、同期応答のために起動するデータ・ハンドラーの MIME タイプとして使用されます。String 型で、デフォルトは xml/soap です。 |
Charset |
| このオプショナル・パラメーター (String 型) は、発信ビジネス・オブジェクトをメッセージに変換するときにデータ・ハンドラーに設定される charset を示します。注: この属性に指定された charset 値は、応答メッセージの Content-Type プロトコル・ヘッダーでは伝搬されません。 |
Request
| ws_botype=request |
この属性は、Web サービス要求に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが SOAP 要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。
この属性は、同期イベント処理 TLO の場合には必須です。
|
Response
| ws_botype=response |
この属性は、Web サービスによって戻される応答に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが SOAP 応答 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の応答属性がある場合は、コネクターは最初の応答属性の ASI を使用します。
この属性は、同期イベント処理 TLO の場合には必須です。
|
Fault | ws_botype=fault
ws_botype=defaultfault |
この属性は、同期イベント処理の場合のオプションであり、応答を正常に取り込むことができないときにコラボレーションから戻される障害メッセージに対応します。コネクターは、属性名ではなくこの ASI を使用して、属性のタイプが SOAP 障害 BO であるかどうかを判別します。ws_botype=defaultfault である場合は、WSDL 構成ウィザードはこの障害ビジネス・オブジェクトをヘッダー処理に使用します。詳しくは、ヘッダー障害の処理を参照してください。 |
要求ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合には必須です。要求ビジネス・オブジェクトは、オブジェクト・レベルの ASI を保有しています。例えば、Business Object Designer Express で SERVICE_SYNCH_OrderStatus_Request をオープンし、「一般」タブをクリックすると、図 7 に示すように、オブジェクト・レベルの ASI が表示されます。
図 7. 同期イベント処理要求オブジェクトに関するオブジェクト・レベルの ASI
同期イベント処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 7 に説明されています。図 7 に示すように、要求ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、そのビジネス・オブジェクトは、動詞なしで戻されます。
表 7. 同期イベント処理: 要求ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、要求ビジネス・オブジェクトのためのデータ・ハンドラー変換を定義するメタオブジェクトです。詳しくは、SOAP 構成 MOを参照してください。
|
cw_mo_jms=SOAPJMSCfgMO
または
| この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。最初の ASI は SOAP/JMS プロトコル・リスナーを示し、2 番目の ASI は SOAP/HTTP または SOAP/HTTPS プロトコル・リスナーを示します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 |
ws_tloname=tloname | この ASI は、このオブジェクトが属する Web サービス TLO の名前を指定します。イベント処理の際に、コネクターは、この ASI を使用して、データ・ハンドラーによって引き渡された要求ビジネス・オブジェクトが TLO の子であるかどうかを判別します。引き渡された要求ビジネス・オブジェクトが TLO の子である場合は、コネクターは、指定された TLO を作成し、要求ビジネス・オブジェクトをその TLO の子として設定し、TLO のオブジェクト・レベルの ASI を使用して、この要求ビジネス・オブジェクトを、サブスクライブしているコラボレーションに引き渡します。 |
応答ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合には必須です。同期イベント処理のための応答ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 8 に説明されています。
表 8. 同期イベント処理: 応答ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、応答ビジネス・オブジェクトに関するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。 |
障害ビジネス・オブジェクトは、TLO の子であり、同期イベント処理の場合にはオプションです。同期イベント処理のための障害ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 9 に説明されています。
表 9. 同期イベント処理: 障害ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、障害ビジネス・オブジェクトに関するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。 |
図 8 は、Business Object Designer Express で展開されたサンプル SOAP 構成 MO を表しています。
図 8. 同期イベント処理のための SOAP 構成 MO 属性
SOAP 構成 MO は、あるデータ・ハンドラー変換 (SOAP メッセージからビジネス・オブジェクトへの変換、またはビジネス・オブジェクトから SOAP メッセージへの変換) で行われるフォーマットの振る舞いを定義します。それぞれの要求、応答、または障害属性に SOAP 構成 MO が割り当てられます。その属性である BodyName、BodyNS、Style、Use、TypeInfo、TypeCheck、および BOVerb の型は、常に String になっています。これらの属性は、SOAP メッセージ要素に対応し、それらの値は、SOAP データ・ハンドラーがメッセージおよびオブジェクトをどのように読み取り、検証するのかを決定します。SOAP 構成 MO および属性についての詳細は、SOAP 構成メタオブジェクト: 各 SOAP ビジネス・オブジェクトの子を参照してください。すべての SOAP 構成 MO は、要求、応答、または障害オブジェクトのいずれの場合にも、BodyName および BodyNS のデフォルト値に関する固有の項目を含んでいなければなりません。
図 9 は、属性がインバウンド SOAP メッセージ内のヘッダーに対応している JMS プロトコル構成 MO を表しています。
図 9. 同期イベント処理のための JMS プロトコル構成 MO 属性
この MO は、オプションで、イベント処理の要求、応答、または障害ビジネス・オブジェクトの子として組み込まれます。通常、プロトコル・ヘッダーとカスタム・プロパティーの (要求メッセージからの) 読み取りまたは (応答または障害メッセージへの) 伝搬を行う必要のある場合に指定します。前述のとおり、要求ビジネス・オブジェクトは、オプションでプロトコル構成 MO の名前をビジネス・オブジェクト・レベルの ASI として宣言します。
イベント処理中に、コネクターはプロトコル・リスナー (SOAP/HTTP、
SOAP/HTTPS、または SOAP/JMS) を使用してトランスポートからイベントを検索します。これらのイベントは、Web サービスとして公開されているコラボレーションからのサービスを要求する、内部または外部 Web サービス・クライアントから送られるメッセージです。それぞれのトランスポートには、固有のヘッダー要件があります。コネクターは、プロトコル構成 MO を使用して、プロトコル固有のヘッダー情報をプロトコル・リスナーからコラボレーションへと転送します。プロトコル構成 MO の属性は、インバウンド SOAP/JMS メッセージ内のヘッダーに対応します。コネクターは、インバウンド SOAP メッセージの内容を使用して、これらの属性の値をビジネス・オブジェクト内に設定します。SOAP/JMS プロトコルの場合、イベント処理と要求処理用のプロトコル構成 MO の属性は以下のとおりです。
表 10. SOAP JMS プロトコル構成 MO の属性: イベント処理と要求処理
SOAP/JMS プロトコル構成 MO の属性 | JMSHeaderName | 説明 |
---|---|---|
CorrelationID | JMSCorrelationID | インバウンド・メッセージ: この属性には JMSCorrelationID ヘッダーからの値が設定されます。
アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSCorrelationID ヘッダーとして設定されます。 |
MessageId | JMSMessageId | インバウンド・メッセージ: この属性には JMSMessageId ヘッダーからの値が設定されます。
アウトバウンド・メッセージ: この属性は、アウトバウンド・メッセージには使用されません。 |
Priority | JMSPriority | インバウンド・メッセージ: この属性には JMSPriority ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSPriority ヘッダーに設定されます。 |
Expiration | JMSExpiration | インバウンド・メッセージ: この属性には JMSExpiration ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSExpiration ヘッダーに設定されます。 |
DeliveryMode | JMSDeliveryMode | インバウンド・メッセージ: この属性には JMSDeliveryMode ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSDeliveryMode ヘッダーに設定されます。 |
Destination | JMSDestination | インバウンド・メッセージ: この属性には JMSDestination ヘッダーからの値が設定されます。
アウトバウンド・メッセージ:
要求処理 この属性からの値は、宛先キュー名として使用され、取得された宛先パスへの発信メッセージの JMSDestination ヘッダーに間接的に設定されます。
|
Redelivered | JMSRedelivered | インバウンド・メッセージ: この属性には JMSRedelivered ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSRedelivered ヘッダーに設定されます。 |
ReplyTo | JMSReplyTo | インバウンド・メッセージ: この属性には JMSReplyTo ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSReplyTo ヘッダーに設定されます。 |
TimeStamp | JMSTimeStamp | インバウンド・メッセージ: この属性には JMSTimeStamp ヘッダーからの値が設定されます。アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSTimeStamp ヘッダーに設定されます。 |
Type | JMSType | インバウンド・メッセージ: この属性には JMSType ヘッダーからの値が設定されます。
アウトバウンド・メッセージ: この属性からの値が、発信メッセージの JMSType ヘッダーに設定されます。 |
UserDefinedProperties | イベント処理のためのユーザー定義のプロパティーを参照してください。 | このオプションの読み取り/書き込み属性は、ユーザー定義のプロトコル・プロパティーのビジネス・オブジェクトを保持します。詳しくは、イベント処理のためのユーザー定義のプロパティーを参照してください。 |
SOAP/HTTP(S) プロトコルの場合、プロトコル構成 MO の属性は次のとおりです。
表 11. イベント処理用 HTTP/HTTPS プロトコル構成 MO 属性
属性 | 必須 | 型 | 説明 |
---|---|---|---|
Content-Type | いいえ | String | この属性の値によって、発信メッセージの Content-Type ヘッダーが定義されます (ヘッダーには、発信メッセージのメッセージ ContentType および 0 個以上のパラメーター (charset) が組み込まれます)。構文は、HTTP プロトコルの Content-Type ヘッダーと同じです (例: text/html; 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 つ以上の子属性とプロパティー値を持つビジネス・オブジェクトに対応します。このビジネス・オブジェクトのすべての属性は、メッセージ・ヘッダーの変数部分で読み取られる (同期応答の場合は書き込まれる) 単一プロパティーを以下のように定義する必要があります。
表 12 は、これらの属性のアプリケーション固有の情報を要約したものです。
表 12. ユーザー定義のプロトコル・プロパティー属性のアプリケーション固有情報: 名前 = 値のペアの内容
名前 | 値 | 説明 |
---|---|---|
ws_prop_name (大文字小文字を区別しない。指定されなければ、属性名がプロパティー名として使用される) | 任意の有効なプロトコル・プロパティー名 | これはプロトコル・プロパティーの名前です。ベンダーによっては、いくつかのプロパティーが拡張機能用に予約されています。一般に、このようなベンダー固有の機能にアクセスしようとする場合以外は、JMS で始まるカスタム・プロパティー (JMS プロトコルの場合) を定義しないでください。 |
ws_prop_type (大文字小文字を区別しない。JMS 用オプション。指定されなければ、String とみなされる。HTTP(S) の場合、String 型しか意味を成さないため、関係しない) | String、Integer、Boolean、 Float、Double、Long、Short | プロトコル・プロパティーのタイプ。JMS プロトコルの場合、JMS API には JMS メッセージにプロパティー値を設定するメソッドとして、 setIntProperty、 setLongProperty、 setStringProperty などがあります。ここで指定される JMS プロパティーのタイプによって、これらのどのメソッドを使用してメッセージのプロパティー値を設定するかが決まります。 |
指定されたカスタム・プロパティー ASI (ws_prop_name または ws_prop_type) が無効で、このヘッダーを処理する論理的な方法 (HTTP 処理でプロパティー・タイプを無視するなど) がない場合、コネクターはログに警告を記録し、このプロパティーを無視します。ws_prop_name または ws_prop_type に対しての必要な検査は実行されたが、カスタム・プロパティーの値を設定することも検索することもできない場合、コネクターはログにエラーを記録し、イベントは失敗します。
UserDefinedProperties 属性が指定された場合、コネクターは、UserDefinedProperties ビジネス・オブジェクトのインスタンスを作成します。次に、コネクターはメッセージからプロパティー値を抽出し、ビジネス・オブジェクトに保管します。少なくとも 1 つのプロパティー値が正常に検索されれば、コネクターは、変更された UserDefinedProperties 属性をプロトコル構成 MO に設定します。
同期イベント処理の場合、UserDefinedProperties 属性が指定されて、そのビジネス・オブジェクトのインスタンスが作成されると、コネクターは、この子ビジネス・オブジェクトの各属性を処理し、それに対応するメッセージ・プロパティー値を設定します。
証明書伝搬のために、コネクターは HTTP プロトコル構成 MO の Authorization_UserID 属性および Authorization_Password 属性をサポートします。このサポートは、HTTP 基本認証スキームの一部としてのこれらの証明書の伝搬に限られます。
SOAP/HTTP または SOAP/HTTPS プロトコル・リスナーが許可ヘッダーを含む SOAP/HTTP Web サービス要求を処理する場合は、リスナーはヘッダーを解析して HTTP 基本認証に従うかどうか判別します。従う場合は、リスナーはユーザー名およびパスワードを抽出し、Base64 を使用してデコードします。このデコードされたストリングは、コロンで区切られたユーザー名およびパスワードから構成されます。プロトコル・リスナーがプロトコル構成 MO で Authorization_UserID 属性および Authorization_Password 属性を検出した場合、リスナーは、イベント許可ヘッダーから抽出した値をこれらの属性に設定します。
図 10 は、展開されたヘッダー・コンテナー属性 OrderHeader を表しています。
図 10. ヘッダー・コンテナーおよび子ビジネス・オブジェクト
ヘッダー・コンテナー属性は SOAP ヘッダー属性とも呼ばれ、子ビジネス・オブジェクトのみを含むビジネス・オブジェクトに対応します。それぞれの子は、SOAP メッセージのヘッダー項目を表します。図 10 に示す例では、要求ヘッダー・コンテナーは OrderHeader になっています。SOAP ヘッダー属性には、SOAP データ・ハンドラーが必要とするアプリケーション固有情報 (ASI) が含まれます。例えば、ヘッダー・コンテナー・ビジネス・オブジェクトは、その ASI によって、soap_location=SOAPHeader のように識別されます。ヘッダー処理についての詳細は、SOAP データ・ハンドラーの処理を参照してください。
すべての SOAP ビジネス・オブジェクトは、要求オブジェクトであるのか、応答オブジェクトであるのか、あるいは障害オブジェクトであるのかに関係なく、ヘッダー・コンテナーを 1 つだけ含んでいます。
図 10 に示す例では、要求ヘッダー・コンテナー (OrderHeader) の 2 つの子属性は、1) SERVICE_SYNCH_OrderStatus_TransactionHeaderChild タイプのトランザクション、および 2) SERVICE_SYNCH_OrderStatus_TradingPartnerHeaderChild タイプの関連会社です。これらの属性は、ヘッダー子ビジネス・オブジェクトに対応します。それぞれの属性は、SOAP メッセージ内の単一のヘッダー要素を表します。ヘッダー要素は、SOAP メッセージの SOAP-Env:Header 要素の直接の子です。図 10 に示すように、ヘッダー子ビジネス・オブジェクトには actor および mustUnderstand 属性が割り当てられることがあります。これらの属性は、SOAP ヘッダー要素の actor および mustUnderstand 属性に対応しています。ヘッダー処理についての詳細は、SOAP データ・ハンドラーの処理を参照してください。
SOAP ヘッダー・メッセージ要素を表すために必要な、任意の数のヘッダー子オブジェクトを含めることができます。
図 11 は、非同期イベント処理のためのビジネス・オブジェクト階層を示しています。要求オブジェクトのみが必須です。
図 11. 非同期イベント処理のためのビジネス・オブジェクト階層
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。ヘッダー・コンテナーおよびヘッダー子ビジネス・オブジェクトについての詳細は、ヘッダー・コンテナー・ビジネス・オブジェクトを参照してください。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての基本的情報を提供します。図 12 は、非同期イベント処理のためのサンプル TLO である SERVICE_ASYNCH_TLO_Order のオブジェクト・レベルの ASI を表しています。
図 12. 非同期イベント処理のためのトップレベル・ビジネス・オブジェクト
以下の表 5 では、非同期イベント処理 TLO のためのオブジェクト・レベルの ASI について説明します。
表 13. 非同期イベント処理 TLO のオブジェクト ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_eventtlo=true |
この ASI プロパティーが true に設定されている場合には、コネクターはこのオブジェクトをイベント処理用の TLO として扱います。
WSDL 構成ウィザードがこの ASI を使用して、ビジネス・オブジェクトが TLO であるかどうかを判別することに注意してください。これについての詳細は、WSDL 構成ウィザードを参照してください。
|
ws_verb=verb |
コネクターは、TLO をコラボレーションに引き渡す前に、TLO で動詞を設定するためにこの ASI を使用します。図 12 に示されているサンプルでは、動詞は Create です。 |
ws_mode=asynch |
イベント通知の際に、コネクターは、この ASI プロパティーを使用して、コラボレーションを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。非同期処理の場合は、この ASI を asynch に設定する必要があります。
デフォルトは asynch です。 |
それぞれの非同期イベント処理 TLO には、要求ビジネス・オブジェクトに対応する単一の属性が含まれています。図 13 は、サンプル TLO の SERVICE_ASYNCH_TLO_Order の要求属性、および属性の ASI を表しています。
表 14 は、非同期イベント処理 TLO の要求属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
Request
| ws_botype=request |
この属性は、Web サービス要求に対応します。コネクターはこの ASI を使用して、この TLO 属性のタイプが SOAP 要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。
この属性は、同期イベント処理 TLO の場合には必須です。
|
要求ビジネス・オブジェクトは、TLO の子であり、非同期イベント処理の場合には必須です。要求ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、そのビジネス・オブジェクトは、動詞なしで戻されます。非同期イベント処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 15 に説明されています。
表 15. 非同期イベント処理: 要求ビジネス・オブジェクトのためのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、要求ビジネス・オブジェクトに対するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。 |
cw_mo_jms=SOAPJMSCfgMO
または cw_mo_http=SOAPHTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。最初の ASI は SOAP/JMS プロトコル・リスナーを示し、2 番目の ASI は SOAP/HTTP または SOAP/HTTPS プロトコル・リスナーを示します。ASI およびプロトコル構成 MO は、両方ともオプションです。詳しくは、プロトコル構成 MOを参照してください。 |
ws_tloname=tloname | この ASI は、このオブジェクトが属する Web サービス TLO の名前を指定します。イベント処理の際に、コネクターは、この ASI を使用して、データ・ハンドラーによって引き渡された要求ビジネス・オブジェクトが TLO の子であるかどうかを判別します。引き渡された要求ビジネス・オブジェクトが TLO の子である場合は、コネクターは、指定された TLO を作成し、要求ビジネス・オブジェクトをその TLO の子として設定し、TLO のオブジェクト・レベルの ASI を使用して、この要求ビジネス・オブジェクトを、サブスクライブしているコラボレーションに引き渡します。 |
図 14 に示すサンプルでは、要求属性には、SOAP 構成 MO、ヘッダー・コンテナー (OrderHeader) のほか、内容に関連した属性 (OrderLineItems) が含まれています。非同期イベント処理の場合の SOAP 構成 MO、プロトコル構成 MO、SOAP ヘッダー・コンテナー、およびヘッダー子ビジネス・オブジェクトの要件および特性は、同期イベント処理の場合と同じです。詳しくは、同期イベント処理 TLOにおける該当のトピックを参照してください。
オブジェクト・レベルの ASI である ws_eventtlo=true がビジネス・オブジェクト内に存在しない場合、コネクターはそのオブジェクトが TLO ではないと判断します。イベント処理の際に、コネクターは、非 TLO、すなわち、汎用ビジネス・オブジェクトおよびアプリケーション固有ビジネス・オブジェクトを処理できます。非 TLO の場合、同じビジネス・オブジェクトが、要求ビジネス・オブジェクトと応答ビジネス・オブジェクトを表します。
非 TLO には、SOAP 構成 MO が含まれていません。コラボレーションを Web サービスとして公開すると、WSDL 構成ウィザードはコネクターの WSCollaborations プロパティーを構成します。コネクターは、WSCollaborations プロパティーを使用して、要求メッセージの BodyName および BodyNS を判別します。非 TLO の場合、WSCollaborations プロパティーがビジネス・オブジェクトの解決のために使用されるということに注意してください。
非 TLO を使用する利点は、Web サービス・ソリューションで使用する TLO 構造のビジネス・オブジェクトを新規に開発する必要がないということです。しかし、TLO を使用すると、データ、すなわち、顧客や会社などをより正確で経済的に公開することができます。また、TLO ビジネス・オブジェクトは、非 TLO よりもカスタマイズに適しています。
非 TLO を WSDL 構成ウィザードへの入力データとして使用する場合の要件については、ビジネス・オブジェクトの識別または開発を参照してください。
要求処理のために、コネクターでは、同期および非同期の 2 種類の TLO を使用することができます。このセクションでは、同期要求処理 TLO について説明します。
図 15 は、同期要求処理のための TLO ビジネス・オブジェクト階層を示しています。要求オブジェクトおよび応答オブジェクトは必須であり、障害オブジェクトはオプションです。イベント処理とは異なり、プロトコル構成 MO は、要求オブジェクトの場合には必須であり、応答および障害オブジェクトの場合には、オプションです。ヘッダー・コンテナーおよびヘッダー子ビジネス・オブジェクトについての詳細は、ヘッダー・コンテナー・ビジネス・オブジェクトを参照してください。
オブジェクト・レベルの ASI は、TLO の性質、および TLO に含まれるオブジェクトについての重要情報を提供します。図 16 は、同期要求処理のためのサンプル TLO である CLIENT_SYNCH_TLO_OrderStatus を表しています。
図 16. 同期要求処理のためのトップレベル・ビジネス・オブジェクト
表 16 では、同期要求処理 TLO のためのオブジェクト・レベルの ASI について説明します。同期イベント処理 TLO のための ASI とは異なり、ws_collab、ws_verb、または ws_eventtlo ASI は、このレベルでの要求処理には必須ではありません。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_mode=synch |
要求処理の際に、コネクターは、この ASI プロパティーを使用して、Web サービスを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。synch が指定された場合、コネクターは応答を予期します。したがって、TLO には、要求および応答ビジネス・オブジェクト、およびオプションとして 1 つまたは複数の障害オブジェクトを組み込む必要があります。
デフォルトは asynch です。 |
図 17 は、CLIENT_SYNCH_TLO_OrderStatus TLO の属性、および属性レベルの ASI を示しています。
図 17 に表示された属性および ASI について、表 17 で説明します。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType | なし |
この属性は、要求ビジネス・オブジェクトを要求メッセージに変換するためにコネクターが起動するデータ・ハンドラーの MIME タイプを指定します。この値は、メッセージ変換規則構成に応じて、同期応答/障害メッセージをビジネス・オブジェクトに変換するために使用される場合があります。
|
BOPrefix | なし | 型 String のこの属性は、データ・ハンドラーに渡されます。 |
Handler | なし | この属性は、Web サービス要求の処理に使用するプロトコル・ハンドラーを指定もので、要求処理専用です。この値は、次のいずれかになります。
デフォルトは soap/http です。 |
Charset |
| 型 String のこのオプショナル・パラメーターは、要求ビジネス・オブジェクトをメッセージに変換するときにデータ・ハンドラーに設定される charset を指定します。注: この属性に指定された charset 値は、要求メッセージの Content-Type プロトコル・ヘッダーでは伝搬されません。 |
Request
| ws_botype=request |
この属性は、Web サービス要求ビジネス・オブジェクトに対応します。コネクターはこの属性 ASI を使用して、この TLO 属性のタイプが SOAP 要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初に取り込まれた属性の ASI を使用します。
|
Response
| ws_botype=response |
この属性は、コラボレーションによって戻される応答に対応し、同期要求処理の場合には必須です。コネクターはこの属性 ASI を使用して、この TLO 属性のタイプが SOAP 応答 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。
|
Fault
| ws_botype=fault
または
| この属性は同期要求処理の場合のオプションであり、応答を正常に取り込むことができないときに Web サービスから戻される障害メッセージに対応するものです。
コネクターはこの ASI を使用して、TLO の属性のタイプが SOAP 障害 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。障害メッセージが詳細要素である場合は、defaultfault ビジネス・オブジェクトが戻されます。defaultfault は、デフォルトのビジネス・オブジェクトの解決に使用されます。詳しくは、SOAP データ・ハンドラーを参照してください。 |
要求ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合には必須です。要求ビジネス・オブジェクトは、オブジェクト・レベルの ASI を保有しています。
例えば、CLIENT_SYNCH_OrderStatus_Request をオープンし、「一般」タブをクリックすると、図 18 に示すように、オブジェクト・レベルの ASI が表示されます。
表 18 では、同期要求処理のための要求ビジネス・オブジェクトのオブジェクト・レベルの ASI について説明します。
表 18. 同期要求処理: 要求ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、要求ビジネス・オブジェクトに対するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。
|
cw_mo_jms=SOAPJMSCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、JMS プロトコル・ハンドラーの宛先 Web サービスを指定するプロトコル構成 MO です。詳しくは、要求処理のための要求ビジネス・オブジェクトの JMS プロトコル構成 MOを参照してください。 |
cw_mo_http=SOAPHTTPCfgMO | このオプショナル ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、SOAP/HTTP-HTTPS プロトコル・ハンドラーの宛先を指定する、別のプロトコル構成 MO です。この ASI は、SOAP/HTTP および SOAP/HTTPS プロトコル・ハンドラーによって使用されます。TLO 要求属性には、要求処理のための JMS または HTTP プロトコル構成 MO (使用する Web サービス・プロトコルによって異なる) がなければなりません。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。 |
SOAPAction=SOAPActionURI | コネクターはこの ASI を使用して、要求メッセージに SOAPAction ヘッダーを設定するかどうかを判別します。この ASI は、宛先 Web サービスが SOAPAction ヘッダーを必要とする場合にのみ指定してください。この ASI は要求処理に使用されるものであり、イベント通知には使用されません。 |
応答ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合には必須です。同期要求処理のための応答ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 19 に説明されています。
表 19. 同期要求処理: 応答ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、応答ビジネス・オブジェクトに関するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。 |
cw_mo_jms=SOAPJMSCfg
MO
または
| この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、JMS または HTTP プロトコル・ハンドラーの応答 SOAP メッセージ内のヘッダーを指定するプロトコル構成 MO であり、応答ビジネス・オブジェクトの場合にはオプションです。詳しくは、プロトコル構成 MOを参照してください。 |
応答ビジネス・オブジェクトに対して、デフォルトの動詞を指定できます。これを行うには、トップレベルの要求ビジネス・オブジェクトの「サポートされている動詞 (Supported Verbs)」リストにある動詞の ASI フィールドに、
DefaultVerb=true;
と指定します。DefaultVerb ASI が指定されず、データ・ハンドラーが動詞の設定されていないビジネス・オブジェクトを処理する場合、応答ビジネス・オブジェクトが、動詞なしで戻されます。
障害ビジネス・オブジェクトは、TLO の子であり、同期要求処理の場合にはオプションです。同期要求処理のための障害ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 9 に説明されています。
表 20. 同期要求処理: 障害ビジネス・オブジェクトのためのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、障害ビジネス・オブジェクトに関するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。 |
cw_mo_jms=SOAPJMSCfg
MO
または
| この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、JMS プロトコル・ハンドラーの応答 SOAP メッセージ内のヘッダーを指定するプロトコル構成 MO であり、障害ビジネス・オブジェクトの場合にはオプションです。詳しくは、プロトコル構成 MOを参照してください。 |
SOAP 構成 MO (SOAPCfgMO) の属性は、イベント処理用の SOAP 構成 MO の場合と同じです。詳しくは、SOAP 構成 MOおよび SOAP 構成メタオブジェクト: 各 SOAP ビジネス・オブジェクトの子を参照してください。
JMS Web サービスを使用するときは、JMS プロトコル構成 MO は要求ビジネス・オブジェクトの場合には必須であり、応答オブジェクトと障害オブジェクトの場合はオプションです。表 21 では、要求処理の JMS プロトコル構成 MO について説明します。ここで示す Destination は、最も重要な属性であり、唯一の必須属性です。JMS プロトコル・ハンドラーはこの属性を使用して、要求された Web サービスを探し出します。このほかに、プロトコル構成 MOで示した JMS 構成 MO のすべての属性は、オプションとして指定できます。
表 21. 要求処理のための JMS プロトコル構成 MO 属性
属性 | 必須 | 型 | 説明 |
---|---|---|---|
Destination | はい | String | ターゲット Web サービスの宛先キュー名。JMS プロトコル・ハンドラーはこの属性を使用して、Web サービスの宛先を判別します。コネクター固有の JNDI プロパティー LookupQueuesUsingJNDI が true に設定されている場合、JMS プロトコル・ハンドラーは JNDI を使用してこのキューを検索します。この属性が宛先キューの JNDI 名を提供することを確認してください。 |
要求処理の際に、SOAP/HTTP-HTTPS プロトコル・ハンドラーは、ターゲット Web サービスの宛先を判別するために、HTTP プロトコル構成 MO を使用します。このプロトコル構成 MO は、要求ビジネス・オブジェクトの場合には必須です。SOAP/HTTP-HTTPS プロトコル・ハンドラーは、HTTP 1.0 POST 要求のみをサポートします。 表 22 に示すように、唯一の必須属性 (Destination) はターゲット Web サービスの完全 URL です。オプションの許可属性については、以下のセクションで説明します。
表 22. 要求処理のための HTTP プロトコル構成 MO 属性
属性 | 必須 | 型 | 説明 |
---|---|---|---|
Destination | はい | String | ターゲット Web サービスの宛先 URL。SOAP/HTTP-HTTPS プロトコル・ハンドラーは、この属性を使用して、Web サービスの宛先を判別します。 |
Content-Type | 要求ビジネス・オブジェクトでは必須。それ以外ではオプション。 | String | この属性の値は、発信メッセージの Content-Type ヘッダー (発信メッセージのメッセージ ContentType、およびオプションで charset が含まれる) を定義します。構文は、HTTP プロトコルの Content-Type ヘッダーと同じです (例: text/html; charset=ISO-8859-4)。Content-Type 属性が定義されていない場合、コネクターは、メッセージの ContentType として text/xml を使用します。 |
Authorization_UserID | いいえ | String | この属性は HTTP 基本認証の userID に対応します。詳しくは、要求処理用の HTTP 証明書伝搬を参照してください。 |
Authorization_Password | いいえ | String | この属性は HTTP 基本認証のパスワードに対応します。詳しくは、要求処理用の HTTP 証明書伝搬を参照してください。 |
1 つ以上の HTTP ヘッダー | いいえ | String | この属性を使用すれば、ハンドラーは、指定された HTTP ヘッダーの値の受け渡しまたは検索ができます。 |
UserDefinedProperties | いいえ | ビジネス・オブジェクト | この属性は、ユーザー定義のプロトコル・プロパティーのビジネス・オブジェクトを保持します。詳しくは、要求処理のためのユーザー定義のプロパティーを参照してください。 |
MessageTransformationMap | いいえ | 単一カーディナリティー・ビジネス・オブジェクト | この属性は、0 個またはそれ以上のメッセージ変換規則を保持するビジネス・オブジェクトを指します。この変換規則には、規則に指定された着信メッセージに適用する MIME タイプおよび charset に関する情報が入っています。詳しくは、メッセージ変換マップを参照してください。 |
図 19 に、Business Object Designer Express における HTTP プロトコル構成 MO 属性の一部を示します。
図 19. 要求処理のための HTTP プロトコル構成 MO 属性
HTTP プロトコル構成 MO の属性を以下に示します。
オプションで、HTTP プロトコル構成 MO にカスタム・プロパティーを指定できます。この指定を行うには、UserDefinedProperties 属性を組み込みます。この属性は、1 つ以上の子属性とプロパティー値を持つビジネス・オブジェクトに対応します。このビジネス・オブジェクトのすべての属性は、メッセージ・ヘッダーの変数部分で読み取られる (同期応答の場合は書き込まれる) 単一プロパティーを以下のように定義する必要があります。
表 23 は、これらの属性のアプリケーション固有の情報を要約したものです。
表 23. ユーザー定義のプロトコル・プロパティー属性のアプリケーション固有情報: 名前 = 値のペアの内容
名前 | 値 | 説明 |
---|---|---|
ws_prop_name (大文字小文字を区別しない。指定されなければ、属性名がプロパティー名として使用される) | 任意の有効なプロトコル・プロパティー名 | これはプロトコル・プロパティーの名前です。ベンダーによっては、いくつかのプロパティーが拡張機能用に予約されています。一般に、このようなベンダー固有の機能にアクセスしようとする場合以外は、JMS で始まるカスタム・プロパティー (JMS プロトコルの場合) を定義しないでください。 |
ws_prop_type (大文字小文字を区別しない。JMS 用オプション。指定されなければ、String とみなされる。HTTP(S) の場合、String 型しか意味を成さないため、関係しない) | String、Integer、Boolean、 Float、Double、Long、Short | プロトコル・プロパティーのタイプ。JMS プロトコルの場合、JMS API には JMS メッセージにプロパティー値を設定するメソッドとして、 setIntProperty、 setLongProperty、 setStringProperty などがあります。ここで指定される JMS プロパティーのタイプによって、これらのどのメソッドを使用してメッセージのプロパティー値を設定するかが決まります。 |
指定されたカスタム・プロパティー ASI (ws_prop_name または ws_prop_type) が無効で、このヘッダーを処理する論理的な方法 (HTTP 処理でプロパティー・タイプを無視するなど) がない場合、コネクターはログに警告を記録し、このプロパティーを無視します。ws_prop_name または ws_prop_type に対しての必要な検査は実行されたが、カスタム・プロパティーの値を設定することも検索することもできない場合、コネクターはログにエラーを記録し、イベントは失敗します。
UserDefinedProperties 属性が指定され、そのビジネス・オブジェクトのインスタンスが作成されると、コネクターは、この子ビジネス・オブジェクトの各属性を処理し、それに対応するメッセージ・プロパティー値を設定します。
同期要求処理の場合は、Web サービス/URL から応答メッセージを受信したときに、UserDefinedProperties 属性が指定されていると、コネクターは UserDefinedProperties ビジネス・オブジェクトのインスタンスを作成します。次に、メッセージからプロパティー値を抽出して、それを新規ビジネス・オブジェクトに保管します。少なくとも 1 つのプロパティー値が正常に検索されれば、コネクターは、変更された UserDefinedProperties ビジネス・オブジェクトをプロトコル構成 MO に設定します。
メッセージ変換マップ (MTM) 機能は、要求処理 HTTP(S) プロトコル・ハンドラーでのみサポートされます。MessageTransformationMap はプロトコル構成 MO のオプションの属性で、ビジネス・オブジェクトを指します。このビジネス・オブジェクトには、規則に指定された MIME タイプおよび charset を持つメッセージを変換する規則が格納されています。属性名が MessageTransformationMap (大文字小文字を区別する) で、この属性がビジネス・オブジェクト・オブジェクト・タイプの場合 (図 19 を参照)、コネクターは、そのオブジェクト内の規則を使用して、メッセージを変換します。
図 19 に示すように、MTM 属性には、カーディナリティー N の子ビジネス・オブジェクト属性が 1 つあり、その属性名は TransformationRule です。メッセージの TransformationRule を検索するときに、SOAP/HTTP(S) プロトコル・ハンドラーはまず、そのメッセージが、すべての TransFormationRule に指定された ContentType と正確に一致するかを確認します。一致しない場合、コネクターは、複数のメッセージ・タイプに適用される規則を検索します。プロトコル・ハンドラーの処理について詳しくは、SOAP/HTTP-HTTPS プロトコル・ハンドラー処理を参照してください。
TransformationRule ビジネス・オブジェクトの各インスタンスでは、表 24 に示すとおりに属性を指定する必要があります。
表 24. HTTP プロトコル構成 MO における MessageTransformationMap の TransformationRule 属性
属性名 | 必須 | 型 | デフォルト値 | 説明 |
---|---|---|---|---|
TransformationRule | いいえ | ビジネス・オブジェクト、カーディナリティー N |
| この属性は、メッセージ変換に関する規則を 1 つ保持します。MessageTranformationMap 属性の下にあるこの属性のインスタンスは 0 個の場合も、それ以上の場合もあります。 |
+ContentType | はい | String | */* | このプロパティーの値は、この変換規則が適用されるメッセージの HTTP ContentType を示します。この属性にデフォルト値 */* が指定された場合、コネクターは、この規則を任意の ContentType に適用できます。プロトコル・ハンドラーの処理の詳細については、SOAP/HTTP-HTTPS プロトコル・ハンドラー処理を参照してください。他の規則と同じ ContentType を持つ規則を複数検出した場合、プロトコル・ハンドラーはログに警告を記録し、重複する規則をすべて無視しますが、固有の規則は使用します。 |
+MimeType | いいえ |
|
| このビジネス・オブジェクトに指定された ContentType のメッセージの処理でデータ・ハンドラーを呼び出すときに使用する MIME タイプ。 |
+Charset | いいえ |
|
| このビジネス・オブジェクトに指定された ContentType の要求を変換するときに使用する charset。 |
証明書伝搬のために、コネクターは HTTP プロトコル構成 MO の Authorization_UserID 属性および Authorization_Password 属性をサポートします。このサポートは、HTTP 基本認証スキームの一部としてのこれらの証明書の伝搬に限られます。
要求処理中に証明書を伝搬する必要がある場合は、WSDL ODA によって生成されたプロトコル構成 MO に Authorization_UserID 属性および Authorization_Password 属性を手動で追加する必要があります。この操作は、ビジネス・オブジェクト定義およびメタ・オブジェクト定義を生成した後に Business Object Designer Express で行います。(WSDL ODA の詳細については、要求処理のためのコラボレーションの有効化を参照してください。)
コラボレーションは、プロトコル構成 MO の Authorization_UserID 属性および Authorization_Password 属性の値を設定します。これらの属性が null でも空でもない場合は、コネクターは、ターゲット Web サービスに送信する要求に許可ヘッダーを作成します。SOAP HTTP/HTTPS プロトコル・ハンドラーは、許可ヘッダーの作成時に HTTP Authentication: Basic and Digest Access Authentication (RFC 2617) に従います。
図 20 は、非同期要求処理のためのビジネス・オブジェクト階層を示しています。必須オブジェクトは要求オブジェクトのみで、このオブジェクトには、SOAP データ・ハンドラーのための SOAP 構成 MO、および SOAP/JMS プロトコル・ハンドラーと SOAP/HTTP/HTTPS プロトコル・ハンドラー用の 2 つのプロトコル構成 MO が含まれます。これらについて、以下のセクションで説明します。
図 20. 非同期要求処理のためのビジネス・オブジェクト階層
TLO には、オブジェクト・レベルの ASI のほか、属性レベルの ASI を持った属性が含まれています。両方の種類の ASI について、以下で説明します。ヘッダー・コンテナーおよびヘッダー子ビジネス・オブジェクトについての詳細は、ヘッダー・コンテナー・ビジネス・オブジェクトを参照してください。
図 21 は、非同期要求処理のためのサンプル TLO である CLIENT_ASYNCH_Order_TLO を表しています。
図 21. 非同期要求処理のためのトップレベル・ビジネス・オブジェクト
以下の表 25 では、非同期要求処理 TLO のオブジェクト・レベルの ASI について説明します。
オブジェクト・レベルの ASI | 説明 |
---|---|
ws_mode=asynch |
要求処理の際に、コネクターは、この ASI プロパティーを使用して、コラボレーションを同期 (synch) で呼び出すのか非同期 (asynch) で呼び出すのかを決定します。非同期要求処理の場合は、この ASI を asynch に設定する必要があります。
デフォルトは asynch です。 |
図 22 は、要求処理 TLO のサンプルである CLIENT_ASYNCH_TLO_Order の属性を表しています。
表 26 は、非同期要求処理 TLO の要求属性に対する属性レベルの ASI を要約したものです。
TLO 属性 | 属性レベルの ASI | 説明 |
---|---|---|
MimeType | なし |
この属性は、コネクターが呼び出すデータ・ハンドラーの MIME タイプを指定します。この属性は要求処理のみに使用されます。(イベント処理の場合、プロトコル・リスナーは SOAPDHMimeType コネクター固有構成プロパティーを使用します。) デフォルトは xml/soap です。 |
BOPrefix | なし | String タイプのこの属性は、今後の開発のために予約されているもので、必須ではありません。 |
Handler | なし | この属性は、Web サービス要求の処理に使用するプロトコル・ハンドラーを指定もので、要求処理専用です。この値は、次のいずれかになります。
デフォルトは soap/http です。 |
Request
| ws_botype=request |
この属性は、Web サービス要求ビジネス・オブジェクトに対応します。コネクターはこの属性 ASI を使用して、この TLO 属性のタイプが SOAP 要求 BO であるかどうかを判別します。属性名ではなく、この ASI が属性タイプを判別します。複数の要求属性がある場合は、コネクターは最初の要求属性の ASI を使用します。
|
要求ビジネス・オブジェクトは、TLO の子であり、非同期要求処理の場合には必須です。非同期要求処理のための要求ビジネス・オブジェクトに対するオブジェクト・レベルの ASI は、表 27 で説明します。
表 27. 非同期要求処理: 要求ビジネス・オブジェクトのオブジェクト・レベルの ASI
オブジェクト・レベルの ASI | 説明 |
---|---|
cw_mo_soap=SOAPCfgMO | この ASI の値は、SOAP 構成 MO に対応する属性の名前と一致しなければなりません。これは、要求ビジネス・オブジェクトに対するデータ・ハンドラー変換を定義する SOAP 構成 MO です。詳しくは、SOAP 構成 MOを参照してください。
|
cw_mo_jms=SOAPJMSCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、JMS プロトコル・ハンドラーの宛先 Web サービスを指定するプロトコル構成 MO です。詳しくは、要求処理のための要求ビジネス・オブジェクトの JMS プロトコル構成 MOを参照してください。 |
cw_mo_http=SOAPHTTPCfgMO | この ASI の値は、プロトコル構成 MO に対応する属性の名前と一致しなければなりません。これは、SOAP/HTTP-HTTPS プロトコル・ハンドラーの宛先を指定する、別のプロトコル構成 MO です。この ASI は、SOAP/HTTP-HTTPS プロトコル・ハンドラーによって使用されます。要求処理のためには、TLO 要求属性が JMS と HTTP の両方のプロトコル構成 MO を備えている必要があります。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。 |
SOAPAction=SOAPActionURI | コネクターはこの ASI を使用して、要求メッセージに SOAPAction ヘッダーを設定するかどうかを判別します。この ASI は、宛先 Web サービスが SOAPAction ヘッダーを必要とする場合にのみ指定してください。この ASI は要求処理に使用されるものであり、イベント通知には使用されません。 |
図 14 に示すサンプルでは、要求属性には、SOAP 構成 MO、ヘッダー・コンテナー (OrderHeader) のほか、内容に関連した属性 (OrderLineItems) が含まれています。非同期要求処理の場合の SOAP 構成 MO、プロトコル構成 MO、SOAP ヘッダー・コンテナー、およびヘッダー子ビジネス・オブジェクトの要件および特性は、同期要求処理の場合と同じです。詳しくは、同期要求処理 TLOにおける該当のトピックを参照してください。
SOAP 構成 MO (SOAPCfgMO) の属性は、イベント処理用の SOAP 構成 MO の場合と同じです。詳しくは、SOAP 構成 MOを参照してください。また、SOAP 構成メタオブジェクト: 各 SOAP ビジネス・オブジェクトの子も参照してください。
JMS Web サービスを使用するときは、JMS プロトコル構成 MO は要求ビジネス・オブジェクトの場合には必須です。詳しくは、要求処理のための要求ビジネス・オブジェクトの JMS プロトコル構成 MOを参照してください。
要求処理の際に、SOAP/HTTP-HTTPS プロトコル・ハンドラーは、ターゲット Web サービスの宛先を判別するために、HTTP プロトコル構成 MO を使用します。このプロトコル構成 MO は、要求ビジネス・オブジェクトの場合には必須です。詳しくは、要求処理のための HTTP プロトコル構成 MOを参照してください。