リファレンス ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容

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

以下の節では、SALT Web サービス定義ファイル (WSDF) リファレンス情報を説明します。

 


概要

Oracle SALT Web サービス定義ファイル (WSDF) は、XML ベースのファイルであり、Oracle SALT Web サービス コンポーネント (Web サービス バインディング、Web サービスのオペレーション、Web サービス ポリシー等) を定義するのに使用します。WSDF は、Web サービス定義言語データ モデルの SALT 特定の表現です。以下の 2 つの WSDF タイプがあります。

詳細については、「Oracle SALT コマンド リファレンス」の「tmwsdlgen」および「wsdlcvtを参照してください。

 


Oracle SALT WSDF の書式

図 A-1 に、WSDF 書式のグラフィカル表現を示します。

図 A-1 SALT Web サービス定義ファイルの書式

SALT Web サービス定義ファイルの書式

 


XML スキーマ

XML スキーマは、WSDF に関連付けられます。WSDF の書式を説明する XML スキーマ ファイルは、$TUXDIR/udataobj/salt/wsdf.xsd ディレクトリにあります。

 


Oracle 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>

 


Oracle SALT WSDF の要素の説明

次のセクションには、WSDF 書式要素およびこれらの属性を一覧表示し説明します。

<Definition>

WSDF ファイルのルート要素です。

表 A-1 <Definition> 属性
属性
説明
必須/省略可能
name
WSDF の名前。この属性の値としては、最大 30 文字列を入力できる (NULL で終わる文字列を除く)。
ネイティブ WSDF : 別個のアプリケーション名を手動で提供する必要がある。
非ネイティブの WSDF : この値は WSDL コンバータ (wsdlcvt) コマンドライン入力パラメータ「output_basename」と同様である。
必須
wsdlNamespace
WSDF の対応する WSDL 文書のターゲット ネームスペースである。
ネイティブ WSDF : 必要に応じて別個の URI 文字列を指定できる。生成された 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 オブジェクトに変換します。

表 A-2 <WSBinding> 属性
属性
説明
必須/省略可能
id
WSBinding オブジェクトを識別する。この値は WSDF 内でユニークである必要がある。この属性の値としては、最大 78 文字列を入力できる (NULL で終わる文字列を除く)。
ネイティブ WSDF : カスタマが指定する値で、生成された WSDL 文書内で wsdl:binding 名として使用する。
非ネイティブの WSDF : この値は外部 WSDL 文書内で定義された wsdl:binding 名である。
必須

<Servicegroup>

1 つの WSBinding オブジェクト用 Servicegroup オブジェクトを定義します。WSBinding オブジェクトごとに正確に 1 つの Servicegroup が含める必要があります。Servicegroup オブジェクトは、Tuxedo サービスのセットをカプセル化します。

<Service>

WSBinding オブジェクト用のサービスを指定します。

ネイティブ WSDF : 各サービスは Tuxedo サービスです。

非ネイティブの WSDF : 各サービスは外部 WSDL 文書内で定義された wsdl:operation オブジェクトから変換された Tuxedo サービスを表します。

表 A-4 <Service> 属性
属性
説明
必須/省略可能
name
サービス名を指定する。この属性の値としては、最大 256 文字列を入力できる (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 に対してこの属性を指定しないこと。

省略可能

<Input>

特定のサービス用の入力メッセージ属性を指定します。この要素は省略可能です。

表 A-5 <Input> 属性
属性
説明
必須/省略可能
name
サービス入力メッセージ名の属性を指定する。これは非ネイティブの WSDF 属性である。外部 WSDL 文書内で定義された入力 wsdl:message の名前を保存するために使用する。

注意 : ネイティブ WSDF に対してこの属性を指定しないこと。

省略可能
wsaAction
サービス入力メッセージ wsaAction の属性を指定する。これは非ネイティブの WSDF 属性である。外部 WSDL 文書内で定義された入力 wsdl:message の wsaAction 属性を保存するために使用する。

注意 : ネイティブ WSDF に対してこの属性を指定しないこと。

省略可能

<Output>

特定のサービス用の出力メッセージ属性を指定します。この要素は省略可能です。

表 A-6 <Output> 属性
属性
説明
必須/省略可能
name
サービス出力メッセージ名の属性を指定する。これは非ネイティブの WSDF 属性である。外部 WSDL 文書内で定義された出力 wsdl:message の名前を保存するために使用する。

注意 : ネイティブ WSDF に対してこの属性を指定しないこと。

省略可能
wsaAction
サービス出力メッセージ名の属性を指定する。これは非ネイティブの WSDF 属性である。外部 WSDL 文書内で定義された出力 wsdl:message の wsaAction 属性を保存するために使用する。

注意 : ネイティブ WSDF に対してこの属性を指定しないこと。

省略可能

<Fault>

特定のサービス用のエラー メッセージの属性を指定します。この要素は省略可能です。

表 A-7 <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 メッセージのペイロード変換関数を開発できます。

詳細については、「Oracle SALT プラグインの使用」の「メッセージ変換プラグインのプログラミング」を参照してください。

<Policy>

以下 2 つのレベルのうちいずれかのレベルに適用する 1 つの Web サービス ポリシー ファイルを参照します。

オブジェクトごとに最大で 10 の Web サービス ポリシーをリファレンスできます。

表 A-8 <Policy> 属性
属性
説明
必須/省略可能
location
リファレンスされた WS-Policy ファイルのローカル ファイル パスを指定する。この属性の値としては、最大 256 文字列を入力できる (NULL で終わる文字列を除く)。
Oracle 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”/>
Oracle SALT では、サポート対象の WS-Policy アサーションごとに適用できるメッセージを制限する。
詳細については、以下の節を参照。
省略可能

<Property>

サービス オブジェクトごとに SALT の特定プロパティを指定します。

表 A-9 <Property> 属性
属性
説明
必須/省略可能
name
プロパティ名を指定する。表 A-10 に、すべての GWWS サーバのプロパティを示す。
必須
value
プロパティの値を指定する。
必須

次の表に、サービス オブジェクトごとに指定できるすべてのプロパティを示します。

表 A-10 <Property> 名リスト
プロパティ
説明
async_timeout
発信サービス : SOAP 応答を待機する時間の設定する。
着信サービス : 動作の影響はない。
(0-32767] (sec)
デフォルト : 60 秒
disableWSAddressing
発信サービス : このプロパティを使用すると、明示的な WS-Addressing リクエストを無効化する。
着信サービス : 動作の影響はない。
{True|False}
デフォルト : False

<SOAP>

WSBinding オブジェクトの SOAP プロトコル情報を指定します。この要素では SOAP バージョンおよびメッセージ スタイルのアクセス エンドポイントを指定します。

表 A-11 <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 オブジェクトにの各アクセスのエンドポイントを指定します。

<Realm>

HTTP または HTTP/S エンドポイントの HTTP レルム属性を指定します。この要素は 1 つのエンドポイントに対してコンフィグレーションされている場合、GWWS は、このエンドポイントを介して発信呼び出しを発行する際、HTTP 基本認証情報をリクエスト メッセージに組み込めようとします。

詳細については、Oracle SALT の『管理ガイド』の「転送レベル セキュリティのコンフィグレーション」を参照してください。

注意 : この要素は非ネイティブの (外部) WSDF ファイルにのみ動作します。

  ページの先頭       前  次