目次 前 次 PDF


「Oracle SALT Webサービス定義ファイルのリファレンス」

「Oracle SALT Webサービス定義ファイルのリファレンス」
 
以下の項では、SALT Webサービス定義ファイル(WSDF)リファレンス情報を説明します。
概要
SALT Webサービス定義ファイル(WSDF)は、XMLベースのファイルであり、SALT Webサービス・コンポーネント(Webサービス・バインディング、Webサービスのオペレーション、Webサービス・ポリシーなど)を定義するのに使用します。WSDFは、Webサービス定義言語データ・モデルのSALT特定の表現です。次の2つのWSDFタイプがあります。
ネイティブWSDF (Tuxedoで生成)
ネイティブWSDFは手作業で構成します。一連のTuxedoサービスとそのWebサービスとして公開する方法についてネイティブWSDFで定義する必要があります。ネイティブWSDFは、SALT 1.1構成ファイルに似ています。
注意:
ネイティブWSDF SALT WSDLジェネレータ(tmwsdlgen)で使用する入力ファイルです。
非ネイティブのWSDF (外部で生成)
非ネイティブのWSDFは、SALT WSDLコンバータ(wsdlcvt)を介して外部WSDLファイルから生成されます。ほとんどの場合、作成したWSDFを(高度な機能の構成以外の場合は)変更する必要はありません。
詳細は、『SALTコマンド・リファレンス』tmwsdlgenに関する項およびwsdlcvtに関する項を参照してください。
SALT WSDFの書式
図A-1に、WSDF書式のグラフィカル表現を示します。
図A-1 SALT Webサービス定義ファイルの書式
XMLスキーマ
XMLスキーマは、WSDFに関連付けられます。WSDFの書式を説明するXMLスキーマ・ファイルは、$TUXDIR/udataobj/salt/wsdf.xsdディレクトリにあります。
 
SALT WSDFの例
リストA-1およびリストA-2に、ネイティブと非ネイティブのWSDFの例を示します。
リストA-1 ネイティブWSDF (手動で構成)
<Definition name="bankapp"
  xmlns=http://www.bea.com/Tuxedo/WSDF/2007 >
  <WSBinding id="bankapp_binding" >
    <Servicegroup id="bankapp">
      <Policy location="/home/user/rm.xml" />
      <Service name="inquiry" />
      <Service name="deposit" />
    </Servicegroup>
    <SOAP>
      <AccessingPoints>
        <Endpoint id="HTTP1" address="http://myhost:7001" />
        <Endpoint id="HTTPS1" address="https://myhost:7002/bankapp" />
      </AccessingPoints>
    </SOAP>
  </ WSBinding >
</Definition>
 
リストA-2 非ネイティブのWSDF (外部WSDLドキュメントから生成)
<Definition name="myWebservice"
  wsdlNamespace="http://www.example.org/myWebservice"
  xmlns=http://www.bea.com/Tuxedo/WSDF/2007 >
  <WSBinding id="A_binding">
    <Servicegroup id="portType">
      <Service name="operation_1" soapAction="op1" />
      <Service name="operation_2" soapAction="op2" />
    </Servicegroup>
    <SOAP version="1.1" style="rpc" use="encoded">
      <AccessingPoints>
        <Endpoint id="example_http_port"
                  address="http://www.example.org/abc" />
        <Endpoint id="example_https_port"
                  address="https://www.example.org/abcssl" />
      </AccessingPoints>
    </SOAP>
  </WSBinding>
  <WSBinding id="B_binding">
    <Servicegroup id="portType">
      <Service name="operation_3" soapAction="op3" />
      <Service name="operation_4" soapAction="op4" />
    </Servicegroup>
    <SOAP version="1.2">
      <AccessingPoints>
        <Endpoint id="another_http_port"
                  address="http://www.example.org/def" />
      </AccessingPoints>
    </SOAP>
  </WSBinding>
</Definition>
 
SALT WSDFの要素の説明
次のセクションには、WSDF書式要素およびこれらの属性を一覧表示し説明します。
<Definition>
WSDFファイルのルート要素です。
 
<Definition>属性
属性
説明
必須
name
WSDFの名前。この属性の値としては、最大30文字列を入力できます(NULLで終わる文字列を除く)。
ネイティブWSDF :別個のアプリケーション名を手動で提供する必要があります。
非ネイティブのWSDF :この値はWSDLコンバータ(wsdlcvt)コマンド行入力パラメータoutput_basenameと同じです。
あり
wsdlNamespace
WSDFの対応するWSDLドキュメントのターゲット・ネームスペースです。
ネイティブWSDF: 生成されたWSDLがターゲット・ネームスペースとして使用できるように、必要に応じて、別個のURI文字列を指定できます。指定しない場合は、デフォルトWSDLターゲット・ネームスペースは「urn:<wsdf_name>.wsdl」のようになります。たとえば、WSDF名が「simpapp」の場合、デフォルトWSDLターゲット・ネームスペースは「urn:simpapp.wsdl」になります。
非ネイティブのWSDF :値は外部WSDLドキュメントのWSDLターゲット・ネームスペースです。
いいえ
<WSBinding>
具体的なプロトコル・バインディング情報を定義します。1つのWSDFファイルに0またはそれ以上のWSBindingオブジェクトを指定できます。
ネイティブWSDF: サブ要素<SOAP>を使用して、Webサービス・クライアント接続用のSOAPバージョン、エンコーディング・スタイル、複数のエンドポイントを設定でき、サブ要素<Servicegroup>を使用して、呼出し用に公開するTuxedoサービスのセットを設定できます。
非ネイティブのWSDF :外部WSDLドキュメントの各SOAPバインディング・オブジェクト(つまり、soap:binding拡張のwsdl:bindingオブジェクト)は1つのWSBindingオブジェクトに変換します。
 
<WSBinding>属性
属性
説明
必須
id
WSBindingオブジェクトを識別します。この値はWSDF内でユニークである必要があります。この属性の値としては、最大78文字列を入力できます(NULLで終わる文字列を除く)。
ネイティブWSDF :カスタマが指定する値で、生成されたWSDLドキュメント内でwsdl:binding名として使用します。
非ネイティブのWSDF :この値は外部WSDLドキュメント内で定義されたwsdl:binding名です。
あり
<Servicegroup>
1つのWSBindingオブジェクト用Servicegroupオブジェクトを定義します。WSBindingオブジェクトごとに正確に1つのServicegroupが含める必要があります。Servicegroupオブジェクトは、Tuxedoサービスのセットをカプセル化します。
 
<Servicegroup>属性
属性
説明
必須
id
サービス・グループIDを指定します。この属性の値としては、最大78文字列を入力できます(NULLで終わる文字列を除く)。
ネイティブWSDF :カスタマが指定する値で、生成されたWSDLドキュメント内でwsdl:portType名として使用します。
非ネイティブのWSDF :この値は外部WSDLドキュメント内で定義されたwsdl:portType名です。
あり
<Service>
WSBindingオブジェクト用のサービスを指定します。
ネイティブWSDF: 各サービスはTuxedoサービスです。
非ネイティブのWSDF: 各サービスは外部WSDL文書内で定義されたwsdl:operationオブジェクトから変換されたTuxedoサービスを表します。
 
<Service>属性
属性
説明
必須
name
サービス名を指定します。この属性の値としては、最大255文字列を入力できます(NULLで終わる文字列を除く)。
ネイティブWSDF :サービス名の値は生成されたWSDLドキュメントでwsdl:operation名として使用します。
非ネイティブのWSDF :サービス名は外部WSDLドキュメント内で定義されたwsdl:operation名と同じです。
あり
tuxedoRef
Tuxedoサービス・メタデータ・リポジトリのサービス定義を参照するために使用する省略可能な属性です。
指定しない場合、属性「name」の値はリファレンス値として使用します。
いいえ
soapAction
サービスsoapAction属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメントで定義された各wsdl:operationのsoapAction設定を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
namespace
サービス・ネームスペース属性を指定します。
非ネイティブWSDFの場合、外部WSDL文書で定義された各wsdl:operationのネームスペース設定を保存するために使用する。
ネイティブWSDFの場合、一致するパラメータに"paramschema"が指定されていないかぎり、SOAPメッセージ・レスポンスのすべての要素がこのネームスペースを使用します。
いいえ
headerMapping
このサービスは、呼び出されたとき、または呼出しを実行するときに、SOAPヘッダーに対してデータを格納または取得します。
データは、サービス・メタデータのaccessパラメータ設定に基づいて、アプリケーション・バッファから取得されるか、アプリケーション・バッファに格納されます。
サービス・メタデータ・リポジトリのドキュメントaccessキーワードのinheader/outheader/errheader値に関する項を参照してください。
 
<Input>
特定のサービス用の入力メッセージ属性を指定します。この要素は省略可能です。
 
<Input>属性
属性
説明
必須
name
サービス入力メッセージ名の属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義された入力wsdl:messageの名前を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
wsaAction
サービス入力メッセージwsaActionの属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義された入力wsdl:messageのwsaAction属性を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
encoding
メッセージの発信時(発信リクエスト)に使用するエンコーディングを指定します。
 
<Output>
特定のサービス用の出力メッセージ属性を指定します。この要素は省略可能です。
 
<Output>属性
属性
説明
必須
name
サービス出力メッセージ名の属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義された出力wsdl:messageの名前を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
wsaAction
サービス出力メッセージ名の属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義された出力wsdl:messageのwsaAction属性を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
encoding
メッセージの発信時(着信リクエスト)に使用するエンコーディングを指定します。
 
<Fault>
特定のサービス用のフォルト・メッセージの属性を指定します。この要素は省略可能です。
 
<Fault>属性
属性
説明
必須
name
サービス・フォルト・メッセージ名の属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義されたエラーwsdl:messageの名前を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
wsaAction
サービス・フォルト・メッセージのwsaAction属性を指定します。これは非ネイティブのWSDF属性です。外部WSDLドキュメント内で定義されたエラーwsdl:messageのwsaAction属性を保存するために使用します。
注意:
ネイティブWSDFに対してこの属性を指定しないこと。
いいえ
<Msghandler>
カスタマイズしたメッセージ変換のハンドラを指定します。任意のサービスの要素<Input><Output>および/または<Fault>に対して省略可能です。この要素の値はハンドラ名で、最大で30文字入力できます(NULLで終わる文字を除く)。
GWWSサーバーは、ハンドラ名を使用したすべてのメッセージ変換プラグインの共有ライブラリからメッセージ変換のハンドラを探します。メッセージ変換のハンドラを使用することで、デフォルトのGWWSメッセージ変換のかわりにカスタマイズしたTuxedoバッファおよびSOAPメッセージのペイロード変換関数を開発できます。
詳細は、『SALT Webサービスのプログラミング』メッセージ変換プラグインのプログラミングに関する項を参照してください。
<Policy>
以下2つのレベルのうちいずれかのレベルに適用する1つのWebサービス・ポリシー・ファイルを参照します。
<Service>レベル
オブジェクトごとに最大で10のWebサービス・ポリシーをリファレンスできます。
 
<Policy>属性
属性
説明
必須
location
リファレンスされたWS-Policyファイルのローカル・ファイル・パスを指定します。この属性の値としては、最大で256文字列を入力できます(NULLで終わる文字列を除く)。
具体的に、SALTでは、一般的なWS-*シナリオ用のWS-Policyテンプレート・ファイルをあらかじめ定義します。これらのファイルは、$TUXDIR/udataobj/salt/policyディレクトリにあります。これらのテンプレート・ファイルは、文字列形式salt:<template_file_name>を使用することで参照できます。
たとえば、SALT WS-SecurityPolicy 1.0テンプレート・ファイルのwssp1.0-signbody.xmlを参照する場合は、WSDFファイルで次のXMLの一部を定義する必要があります。
<Policy location=”salt:wssp1.0-signbody.xml” />
あり
use
WS-Policyファイルは入力メッセージ、出力メッセージ、フォルト・メッセージか3つの組合せに適用しているかを指定します。複数のメッセージを設定する場合、スペースで区切ります。
たとえば、「入力」および「出力」メッセージに適用するWS-Policyファイルの「mypolicy.xml」を構成する場合、WSDFファイルで次のXMLの一部を定義する必要があります。
<Policy location=”mypolicy.xml” use=”input output”/>
SALTでは、サポート対象のWS-Policyアサーションごとに適用できるメッセージを制限します。
詳細は、以下の項を参照してください。
いいえ
<Property>
サービス・オブジェクトごとにSALTの特定プロパティを指定します。
 
<Property>属性
属性
説明
必須
name
プロパティ名を指定します。表A-10に、すべてのGWWSサーバーのプロパティを示します。
あり
value
プロパティの値を指定します。
あり
表A-10に、サービス・オブジェクトごとに指定できるすべてのプロパティを示します。
 
<Property>名リスト
プロパティ
説明
async_timeout
発信サービス: SOAPレスポンスを待機する時間の設定します。
着信サービス:動作の影響はありません。
(0-32767] (秒)
デフォルト: 60秒
disableWSAddressing
発信サービス:このプロパティを使用すると、明示的なWS-Addressingリクエストを無効化します。
着信サービス:動作の影響はありません。
{True|False}
デフォルト: False
ignore_namespace
Tuxedoサービスに渡される前にXMLタイプ・バッファからネームスペースを削除し、Webサービス・クライアントに応答が送信される前にそれらを戻します。
Webサービスとして公開されるネイティブTuxedoサービスにのみ適用されます。
{True|False}
デフォルト: False
 
 
 
 
<Property> headerMapping
プロパティ
説明
headerMapping
trueの場合、呼び出されたとき、または呼出しを実行するときに、SOAPヘッダーにデータを格納またはSOAPヘッダーからデータを取得します。
データは、サービス・メタデータのaccessパラメータ設定に基づいて、アプリケーション・バッファから取得されるか、アプリケーション・バッファに格納されます。
サービス・メタデータ・リポジトリ・ドキュメントでaccessキーワードのinheader/outheader値を参照してください。
{True|False}
デフォルト: False
<SOAP>
WSBindingオブジェクトのSOAPプロトコル情報を指定します。この要素ではSOAPバージョンおよびメッセージ・スタイルのアクセス・エンドポイントを指定します。
 
<SOAP>属性
属性
説明
必須
version
このWSBindingオブジェクトのSOAPバージョンを指定します。有効な値は「1.1」および「1.2」です。指定しない場合、1.1が使用されます。
いいえ
style
このWSBindingオブジェクトのSOAPメッセージ・スタイルを指定します。有効な値は「rpc」および「document」です。指定しない場合、「document」が使用されます。
いいえ
use
このWSBindingオブジェクトのSOAPメッセージのエンコーディング・スタイルを指定します。有効な値は「encoded」および「literal」です。
明示的に指定しない場合、「style」値に従ってこの値が自動的に選択される。「style」「rpc」の場合、「encoded」を使用する。「style」「document」の場合、「literal」を使用する。
いいえ
注意:
現在のSALTリリースでは、「rpc/encoded」および「document/literal」のみサポートされています。
<AccessingPoints>
WSBindingオブジェクトのエンドポイント・リストを指定します。各サブ要素<Endpoint>は、特定のエンドポイントを表します。
この要素に対する属性はありません。
<Endpoint>
WSBindingオブジェクトにの各アクセスのエンドポイントを指定します。
 
<Endpoint>属性
属性
説明
必須
id
WSBindingオブジェクト内で一意のエンドポイントID値を指定します。この属性の値としては、最大78文字列を入力できます(NULLで終わる文字列を除く)。
あり
address
エンドポイント・アドレスを指定します。アドレス値には次の書式を使用する必要があります。
"http(s)://<host>:<port>/<context_path>"
注意:
2つのエンドポイントに、まったく同じアドレスURL値を指定することはできません。
あり
<Realm>
HTTPまたはHTTP/SエンドポイントのHTTPレルム属性を指定します。この要素は1つのエンドポイントに対して構成されている場合、GWWSは、このエンドポイントを介して発信呼出しを発行する際、HTTP基本認証情報をリクエスト・メッセージに組込めようとします。
詳細は、『SALT構成ガイド』トランスポート・レベルのセキュリティの構成に関する項を参照してください。
注意:
この要素は非ネイティブの(外部) WSDFファイルにのみ動作します。

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved