「OData の書き込み」アクティビティー

このアクティビティーは、「OData の読み取り」アクティビティーの出力をペイロード、HTTP 状況コードなどのその他の詳細とともに入力として受け入れ、応答として返す必要がある出力を生成します。

「OData の書き込み」アクティビティーの構成プロパティー

表 1. 「構成」パネルのプロパティー
フィールド名 説明
OData バージョン このアクティビティーで使用される OData のバージョン。単一オーケストレーション内のアクティビティーはすべて、同じバージョンを使用する必要があります。現在サポートされているバージョンは 4.0 のみです。
入力データの選択 「OData の読み取り」アクティビティーにビジネス・データ構造を提供する方法について、いずれかのオプションを選択します。OData API は、提供されるこのビジネス構造に基づいて作成されます。
  • 既存 XML スキーマ: オーケストレーション内で使用可能な既存のスキーマを参照する場合、このオプションを選択します。このオプションでは、1 つのオブジェクトのみを選択できます。これは、OData API が 1 つのトップレベル・オブジェクトのみをサポートすることを意味します。Cast Iron オーケストレーションによって OData API を公開する必要がある場合、このオプションを使用します。
  • エンドポイント URL (OData API): 外部 OData API アプリケーションと対話する場合、このオプションを選択します。この場合、Cast Iron はクライアントとして機能します。外部アプリケーションのサービス・ルート URL を指定する必要があります。このオプションは、バージョン 7.5.1 時点ではサポートされておらず、将来のバージョンで追加される予定です。
  • 複数エンティティーをサポートするための新規 XML スキーマ: OData API で複数のトップレベル・オブジェクトをサポートするには、このオプションを選択します。1 つ以上のグローバル・エレメントを含んだ XML スキーマを、提供されるテキスト域に貼り付ける必要があります。Cast Iron オーケストレーションによって OData API を公開する必要がある場合、このオプションを使用します。例えば、下記のサンプル XML スキーマを参照してください。

例として、account オブジェクトと product オブジェクトを含んだサンプル XML スキーマを示します。

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
 xmlns:ras="http://www.sample.com/xmlns/prod/sample"
 targetNamespace="http://www.sample.com/xmlns/prod/sample">
 <element name="account" type="ras:AccountObject"/>
 <element name="product" type="ras:ProductObject"/>
 <complexType name="AccountObject">
  <sequence maxOccurs="1" minOccurs="1">                       
        <element maxOccurs="1" minOccurs="0" name="accountId" type="int"/>                       
        <element maxOccurs="1" minOccurs="0" name="accountName" type="string"/>                       
        <element maxOccurs="1" minOccurs="0" name="valid" type="boolean"/>           
  </sequence>
 </complexType>
 <complexType name="ProductObject"> 
  <sequence maxOccurs="1" minOccurs="1">
   <element maxOccurs="1" minOccurs="1" name="pid" type="int"/>
   <element maxOccurs="1" minOccurs="0" name="productName" type="string"/>                       
   <element maxOccurs="1" minOccurs="0" name="description" type="string"/>                       
   <element maxOccurs="1" minOccurs="0" name="stock" type="int"/>           
  </sequence> 
 </complexType>
</schema>
表 2. 「入力のマップ」プロパティー
フィールド名 説明
serviceName これは、OData ReST API の名前であり、URL の一部になります。このプロパティーの値は、HTTP 「要求の受信」アクティビティーの「構成」パネルにある「URL (ホスト名の後のパス)」プロパティーの値と一致しなければなりません。この名前の URL がヒットすると (例えば、http://host/serviceName)、応答内でサービス文書が返されます。
protocol OData ReST API でサポートされるプロトコル。この値は、サポートされる 2 つの値 (HTTP または HTTPS) のいずれかにデフォルトで設定される必要があります。
host API を実行しているホスト。このプロパティーの値は、HTTP 「要求の受信」アクティビティーの出力からマップされる必要があります。
method 要求の HTTP メソッド。このプロパティーの値は、HTTP 「要求の受信」アクティビティーの出力からマップされる必要があります。
Accept 「Accept」ヘッダーの値。このプロパティーの値は、デフォルト値を設定するか、HTTP 「要求の受信」アクティビティーの出力からマップすることができます。サポートされる値は、application/json および application/xml です。
Content-Type 「Content-Type」ヘッダーの値。このプロパティーの値は、デフォルト値を設定するか、HTTP 「要求の受信」アクティビティーの出力からマップすることができます。サポートされる値は、application/json および application/xml です。
resourcePath このプロパティーには、呼び出しの URL パスが含まれ、「OData の読み取り」アクティビティーの出力からマップされます。
entities このプロパティーはストリング配列型であり、URL で要求されたエンティティー・セット名が含まれます。このプロパティーは「OData の読み取り」アクティビティーの出力からマップされます。例えば、serviceName が /test で、選択済みのビジネス・データ構造が (前記のスキーマにある) account である場合、すべての account の詳細を取得するための URL は http://hostname/test/accounts になります。この例の場合、エンティティー・セット名は accounts です。
fieldName ビジネス・データ構造内に存在するフィールド名の要求の場合、このプロパティーにフィールドの名前が含まれます。このプロパティーの値は、「OData の読み取り」アクティビティーの出力からマップされます。例えば、要求された URL が http://hostname/test/accounts(5)/accountName であれば、fieldName の値は accountName になります。
additionalpath 要求 URL 内に $value または $count などの追加のトークンが存在する場合、このプロパティーにはその値が含まれます。このプロパティーは「OData の読み取り」アクティビティーの出力からマップされます。
primaryKeys

要求 URL に 1 次キーが含まれる場合、その情報がこのフィールドに含まれます。このフィールドの値は「OData の読み取り」アクティビティーの出力からマップされます。

URL の例:

http://hostname/test/accounts(5)

http://hostname/test/salesorder(orderid='so1',name='ask')

primaryKeys 構造には、1 次キーのフィールド名、値、およびデータ型が含まれます。

status

DELETE 操作の場合に、応答で返される HTTP 状況コードが含まれます。

writeODataInput

シリアライズされ、応答で返される必要があるビジネス・オブジェクト構造。

writeODataQueryParametersInput

応答データに適用する必要がある照会パラメーター。この値は、「OData の読み取り」の出力からマップされます。

writeODataHttpHeadersInput

応答データに適用する必要がある HTTP ヘッダー。この値は、「OData の読み取り」の出力からマップされます。

表 3. 「出力のマップ」プロパティー
フィールド名 説明
writeODataOutput 応答として送信する必要があるデータ。HTTP 状況コード、HTTP メッセージ、および応答ペイロードが含まれます。
writeODataHttpHeadersOutput このプロパティーには応答として送信される必要がある HTTP ヘッダーが含まれます。