ユーザーガイド > リソースの公開 > Webサービスへのリソースの公開 > コントラクトファーストのWSDLおよびSOAPデータサービスの公開
 
コントラクトファーストのWSDLおよびSOAPデータサービスの公開
既存のWSDL定義を、SOAP 1.1または1.2を使用するWebサービスとして公開することで、TDVで利用できるようにすることができます。コントラクトファーストのWSDLを公開する場合は、WSDLコントラクトから開始し、TDVを使用して残りのコントラクトに入力します。この状況では、TDVで定義セットを使用して既存のWSDLファイルをインポートします。XMLスキーマとWSDLコントラクトから開始し、必要なプロシージャコードを作成して終了します。プロシージャコードはTDVによって作成され、指定した場所に保存されます。
注意: RESTサービスには、関連付けられたWSDLコントラクトがありません。
抽象コントラクトファーストWSDLの動作
コントラクトファーストWSDLで抽象オプションを使用することを選択すると、入力メッセージと出力メッセージがTDVによって自動的に生成されます。
具象コントラクトファーストWSDLの動作
コントラクトファーストWSDLで具象オプションを使用することを選択すると、定義した入力および出力バインディングメッセージがTDVによって読み取られ、使用されます。メッセージのセキュリティと転送を制御するために定義したバインディングは保持され、Studioを介して表示されます。
バインディングのポート名を指定できます。
コントラクトファーストのWSDLおよびSOAPデータサービスを公開するには
1.WSDL定義セットを作成します。「WSDL定義セットの作成」を参照してください。たとえば、TDVリソースツリーの共有ノードの下にNewWSDLDefinitionSetを作成します。
2.リソースを公開するのに十分な権限を持つユーザーとしてStudioにログインしていることを確認します。
 
3.リソースツリーで[Data Services(データサービス)]ノードの下にある[Web Services(Webサービス)]ノードを選択します。
4.右クリックして、[New Composite Web Service(新しい複合Webサービス)]を選択します。
[Add Composite Web Service(複合Webサービスの追加)]ダイアログが開きます。
5.[Data Service Name(データサービス名)]に、Webサービスの名前を入力します。
6.[OK]をクリックします。
7.リソースツリーから、先ほど作成したWebサービスを開きます。
[SOAP]パネルにWebサービスが表示されます。
8.[Service(サービス)]セクションで、[Enable Contract First(コントラクトファーストを有効にする)]をクリックし、その値をtrueに設定します。
事前定義されたWSDLとWSDL操作を参照する場合は、trueを選択します。TDVがWSDL定義を取得した後、StudioのWSDL定義エディターを使用してWSDL操作の定義を完了する必要があります。
[Enable Contract First(コントラクトファーストを有効にする)]の下に新しいプロパティ[Contract(コントラクト)]が表示されます。
9.コントラクトを展開します。
10.[Contract(コントラクト)]の下の[WSDL Contract(WSDLコントラクト)]をダブルクリックしてリソースパスを入力するか、WSDL定義セットを参照します。
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されている場合に表示されます。WSDL定義セットへのパスを入力するか、参照ボタンを使用して、TDV内で定義したWSDL定義セットを指定します。
11.Webサービスを保存します。
StudioによってWSDL定義セットが読み取られ、定義セットで指定された特性が[SOAP]パネルに入力されます。
12.画面の[Service(サービス)]部分で、次のプロパティの値を入力または選択します。
プロパティにデフォルト値がある場合、値は必須です。
プロパティ
説明
[Enabled(有効)]
true (デフォルト値)は、このタブで定義した情報を使用するようにシステムに指示します。
[Target Namespace(ターゲット名前空間)]
SOAPインストールの場所が表示されます。WSDLコントラクトにターゲット名前空間が定義されている場合は、その名前空間がこのフィールドに表示されます。
[Binding Name(バインディング名)]
WSDL定義の他の場所から参照できる一意のバインディング名。この名前は、バインディングがSOAPプロトコル形式(エンベロープ、ヘッダー、および本文)にバインドされていることを示します。
[Contract(コントラクト)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されている場合に表示されるプロパティ見出し。
[Contract Style(コントラクトスタイル)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されている場合に表示されます。[ABSTRACT(抽象)]または[CONCRETE(具象)]を選択します。WSDLメッセージのセキュリティと転送を制御するために定義したバインディングがWSDL定義に含まれている場合は、具象を使用します。
[WSDL Contract(WSDLコントラクト)]フィールドで選択したWSDLに具象バインディングが含まれていない場合、[CONCRETE Contract Style(具象コントラクトスタイル)]を選択することはできません。
[Service Name(サービス名)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されていて、[Contract Style(コントラクトスタイル)]が[CONCRETE(具象)]に設定されている場合に表示されます。値は、定義セットを介してインポートされたWSDLから入力されます。
[Port Name(ポート名)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されていて、[Contract Style(コントラクトスタイル)]が[CONCRETE(具象)]に設定されている場合に表示されます。値のリストからポートを選択します。ポートはWSDL内で一意である必要はありませんが、Webサービス内で一意である必要があります。
[Port Type Name(ポートタイプ名)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されている場合に表示されます。値のリストからポートを選択します。ポートはWSDL内で一意である必要はありませんが、Webサービス内で一意である必要があります。
[Implementation Folder(実装フォルダー)]
[Enable Contract First(コントラクトファーストを有効にする)]がtrueに設定されている場合に表示されます。実装プロシージャが生成されるTDVフォルダーを指します。場所を編集するには、ダブルクリックします。
[Enable MTOM(MTOMを有効にする)]
有効な値はtrueまたはfalseです。trueに設定すると、Webサービスとの間でバイナリーデータを送受信する方法であるメッセージ送信最適化メカニズム(MTOM)を使用できるようになります。
[Security Policy(セキュリティポリシー)]
localhost/policy/securityで定義されている使用可能なすべてのポリシーが一覧表示されます。
[SAML Validator Class(SAMLバリデータークラス)]
ユーザーがSAMLアサーションを検証できるようにするJavaクラスの名前を入力します。
[Subject Mapper Class(サブジェクトマッパークラス)]
次の場所にあるTDVの拡張Java APIサブジェクトマッパーを使用して、SAMLコンテンツのJavaクラスを定義します。
<TDV_install_dir>\apps\extension\docs\com\compositesw\extension\security\SubjectMapper.html
samlSubjectを既存のTDVユーザーにマップし、このSAMLプリンシパルにそのユーザーと同じ権限を割り当てるには、samlSubjectToCompositeUserメソッドを使用します。
Javaクラスを作成したら、JARファイルを<TDV_install_dir>\apps\server\libフォルダーに保存します。
[Endpoint URL Path(エンドポイントURLのパス)]
このWebサービスのエンドポイントURLのパス。デフォルトは、Webサービスに使用した名前(スペースが削除されたもの)です。
[WSDL URLs(WSDL URL)]
プロパティ見出し。
[HTTP/SOAP 1.1]
操作へのアクセスに使用できるHTTP SOAP 1.1 URLが表示されます。
[HTTP/SOAP 1.2]
操作へのアクセスに使用できるHTTP SOAP 1.2 URLが表示されます。
[HTTPS/SOAP 1.1]
操作へのアクセスに使用できるHTTPS SOAP 1.1 URLが表示されます。
[HTTPS/SOAP 1.2]
操作へのアクセスに使用できるHTTPS SOAP 1.2 URLが表示されます。
13.画面の[Operations(操作)]部分の上部で、画面の一部で、使用可能なWebサービスビューまたはプロシージャを選択します。
画面のこの部分には、インポートまたはWSDL定義セットで定義されたWSDL操作が自動的に入力されます。定義セットが変更された場合は、Webサービスを保存しないと、WSDL操作の最新リストが表示されないことがあります。ビューまたはその他のプロシージャをコントラクトファーストWebサービスに公開すると、それらは自動的に[Operations(操作)]リストに表示されます。
14.画面の[Operations(操作)]および[Parameters(パラメーター)]部分を編集するには、「SOAPデータサービスの公開」の手順を参照してください。
15.具象WSDLを定義することを選択した場合は、画面の[Parameters(パラメーター)]部分の下部に、いくつかの追加のプロパティと選択したパラメーターの値が表示されます。
具象WSDLの[Element Name(要素名)]と[Message Name(メッセージ名)]は、このStudioエディターから表示できますが、編集することはできません。
16.定義を保存します。