この Web サービスのデータ サービスでは、REST (Representational State Transfer) および SOAP (Simple Ojbect Access Protocol) リクエストをサポートしています。
コンフィギュレーション セクション | 説明 |
webServiceDefinitions | このデータ サービスを通じて利用可能な Web サービスのタイプを定義します。 |
webServiceRequests | サーバー上で定義された REST および SOAP リクエストを示します。このリクエストは、アプリケーションが外部データにアクセスする際に参照によって使用できます。 メモ: Web サービスのリクエストは、クライアント UI の embeddedServiceRequest 内で指定することもできます。 |
要素 | 説明 |
soapServiceDefinition | SOAP サービスの ID を定義します。この ID により serviceRequests がこのサービスを参照できます。 |
属性 | 要素 | 説明 |
id | soapServiceDefinition | serviceRequests でこのサービスを識別するための ID を指定します。 |
wsdlLocation | soapServiceDefinition | SOAP サービスに使用する wsdl ファイルの場所を指定します。 |
<webServiceDefinitions> <soapServiceDefinition ID = "soap", wsdlLocation="X" > </soapServiceDefinition> </webServiceDefinitions> |
Web サービスのデータサービス タイプでは、REST アーキテクチャを使用して実装された Web サービスとの通信がサポートされます。
REST では HTTP を使用し、次のメソッドがサポートされています。
メソッド | 説明 |
DELETE | 指定されたリソースの場所でそのリソースを削除します。 |
GET | 指定されたリソースの場所でそのリソースを取得します。 |
POST | 指定されたリソースの場所に、渡されたデータを追加します。 |
PUT | 指定された場所のリソースを、渡されたデータで置き換えます。 |
要素 | タイプ | 説明 | 必須/省略可能 |
id | 属性 | dataDefinitionRequests の serviceResourceReference 要素、またはクライアント UI ファイル内のembeddedServiceRequestで参照されるときに、このリクエストを識別する ID を指定します。 | 必須 |
メソッド | 属性 | 必要に応じて、このリクエストが実行する、上記の HTTP メソッドのいずれかを指定します。 | 省略可能 メソッドを指定しない場合、restRequestではデフォルトで GET メソッドが使用されます。 |
url | 子属性 | REST リソースの場所を指定します。 | 必須 |
urlParameters | 子属性 | REST リソースに送信する追加情報を名前と値のペアのフォーマットで指定する urlParameters をすべて含みます。例: <urlParameter name="username">JR</urlParameter> | 省略可能 |
body | 子属性 | PUT または POST リクエストの本体部分の内容を指定します。 | 省略可能 |
<webServiceRequests> <restRequest id="searchFlickrParam"> <url>http://www.flickr.com/services/rest</url> <urlParameters> <urlParameter name="method">flickr.photos.search</urlParameter> <urlParameter name="api_key">ffdbbd159bdde999cc638c280377a8d1</urlParameter> <urlParameter name="text">{0}</urlParameter> <urlParameter name="per_page">25</urlParameter> </urlParameters> </restRequest> </webServiceRequests> |
SOAP は、HTTP を通じて Web サービスにアクセスするための XML ベースのプロトコルです。
要素 | タイプ | 説明 | 必須/省略可能 |
id | 属性 | dataRequestDefinitionまたはデータリクエストで参照されるときに、このリクエストを識別するための ID を指定します。 | 必須 |
endPointAddress | 子属性 | このリクエストを処理する Web サービスの URL の場所を指定します。 | 必須 |
soapActionURI | 子属性 | SOAP リクエストで使用するアクションの URI を指定します。 | 省略可能 |
header | 子属性 | SOAP リクエストのヘッダー部分を構成する要素を指定します。通常、前処理でリクエストに追加されます。 属性: name - データサービスが前処理でこの要素を識別および変更できるようにするために、要素に関連付ける名前。 nameSpace - 要素の名前空間を指定します。 | 省略可能 |
body | 子属性 | SOAP リクエストの本体部分を構成する要素を指定します。 属性: name - データサービスが前処理でこの要素を識別および変更できるようにするために、要素に関連付ける名前。 nameSpace - 要素の名前空間を指定します。 | 必須 |
<soapRequest id="searchFlickrSoap"> <endPointAddress>http://api.flickr.com/services/soap/</endPointAddress> <body nameSpace="urn:flickr" localName="FlickrRequest"> <bodyElement name="method">flickr.photos.search</bodyElement> <bodyElement name="api_key">ffbbd159dde99cc678c193777c2d9</bodyElement> <bodyElement name="text">dog</bodyElement> <bodyElement name="per_page">25</bodyElement> </body> </soapRequest> |
サービスリクエストでの Web サービスリクエストの使用
場所 | 説明 |
nexaweb-webservices.xml | サーバーサイドの nexaweb-webservice.xmlコンフィギュレーションファイルの webServiceRequestsセクションで Web サービス リクエストを指定します。次に、nexaweb-data.xmlファイル内の dataRequestDefinition の serviceResourceReference でこのリクエストを参照します。(最後に、クライアント UI ファイル内の serviceRequest で dataRequestDefinition を参照します。) |
nexaweb-data.xml | nexaweb-data.xmlファイル内の dataRequestDefinition の serviceResourceDefintion で Web サービスリクエストを指定します。(次に、クライアント UI ファイル内の serviceRequest で dataRequestDefinition を参照します。) |
クライアント UI | クライアント UI ファイル内の embeddedServiceRequest で直接 Web サービスリクエストを指定します。 |