Aktivität 'OData lesen'

Diese Aktivität empfängt die OData-URL zusammen mit Abfrageparametern, Nutzdaten und HTTP-Headern als Eingabe und erstellt eine Ausgabe, die die Details des Objekts, das verwendet wird, die Primärschlüsseldetails sowie die Nutzdaten, sofern vorhanden, zurückgibt. Diese Ausgabe wird bei der Ausführung von Geschäftslogik zusammen mit anderen Aktivitäten in der Orchestrierung verwendet.

Konfigurationseigenschaften für die Aktivität 'OData lesen'

Tabelle 1. Eigenschaften in der Anzeige 'Konfigurieren'
Feldname Beschreibung
OData-Version Die OData-Version, die von dieser Aktivität verwendet werden soll. In einer Orchestrierung müssen alle Aktivitäten dieselbe Version verwenden. Gegenwärtig wird nur die Version 4.0 unterstützt.
Eingabedaten auswählen Wählen Sie eine der Optionen zur Übergabe der Geschäftsdatenstruktur an die Aktivität 'OData lesen' aus. Die OData-API wird auf Basis der angegebenen Geschäftsstrukturen erstellt.
  • Vorhandenes XML Schema: Wählen Sie diese Option aus, wenn Sie zu einem vorhandenen Schema navigieren wollen, das in der Orchestrierung verfügbar ist. Mit dieser Option kann nur ein Objekt ausgewählt werden, sodass die OData-API nur ein Objekt auf höchster Ebene unterstützen kann. Diese Option wird verwendet, wenn die OData-API durch Cast Iron-Orchestrierungen bereitgestellt werden muss.
  • Endpunkt-URL (OData-API): Wählen Sie diese Option aus, um eine Verbindung zu einer externen OData-API-Anwendung herzustellen. In diesem Fall fungiert Cast Iron als Client. Die Service-Stamm-URL der externen Anwendung muss angegeben werden. Diese Option wird in Version 7.5.1 nicht unterstützt, sondern in zukünftigen Versionen hinzugefügt.
  • Neues XML-Schema zur Unterstützung mehrerer Entitäten: Wählen Sie diese Option aus, um mehrere Objekte auf höchster Ebene in der OData-API zu unterstützen. In den vorgesehenen Textbereich muss ein XML-Schema eingefügt werden, dass ein oder mehrere globale Elemente enthält. Diese Option wird verwendet, wenn die OData-API durch Cast Iron-Orchestrierungen bereitgestellt werden muss. Ein Beispiel finden Sie im nachfolgenden XML-Schema.

Das folgende XML-Schema mit Objekten 'account' und 'product' ist ein Beispiel.

<?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>
Tabelle 2. Eingabeeigenschaften zuordnen
Feldname Beschreibung
serviceName Dies ist der Name der OData-ReST-API und ist Teil der URL. Der Wert dieser Eigenschaft muss mit dem Wert der Eigenschaft "URL (Pfad nach Hostname)" in der Anzeige 'Konfigurieren' der HTTP-Aktivität "Anforderung empfangen" übereinstimmen. Wenn die URL mit diesem Namen (Beispiel: http://host/serviceName) angetroffen wird, gibt sie das Servicedokument in der Antwort zurück.
protocol Das Protokoll, das von Ihrer OData-ReST-API unterstützt wird. Dieser Wert muss mit einem der beiden unterstützten Werte (HTTP oder HTTPS) als Standardwert festgelegt werden.
host Der Host, auf dem die API ausgeführt wird. Der Wert für diese Eigenschaft muss aus der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden.
method Die HTTP-Methode der Anforderung. Der Wert für diese Eigenschaft muss aus der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden.
uri Der URI der HTTP-Anforderung. Der Wert für diese Eigenschaft muss aus der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden.
Accept Der Accept-Headerwert. Der Wert dieser Eigenschaft kann auf den Standardwert gesetzt oder aus der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden. Unterstützte Werte: application/json und application/xml.
Content-Type Der Wert des Content-Type-Headers. Der Wert dieser Eigenschaft kann auf den Standardwert gesetzt oder aus der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden. Unterstützte Werte: application/json und application/xml.
PrimaryKeys Die Felder, die in den ausgewählten Geschäftsdatenstrukturen als Primärschlüssel markiert werden müssen. Diese Eigenschaft ist ein Zeichenfolgenarraytyp, der mehrere Werte zur Unterstützung zusammengesetzter Primärschlüssel aufnehmen kann.

Die Syntax der Feldwerte wird nachfolgend angegeben.

Syntax: objectName:fieldName

Beispiel: Für das oben angegebene Schema können die Werte wie folgt aussehen: account:accountId oder product:pid

readODataInputPayload Die OData-Anforderungsnutzdaten, die für die HTTP-Methoden POST, PUT und PATCH übergeben werden müssen. Der Wert für diese Eigenschaft muss aus der Eigenschaft 'body' der Ausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden.
readODataHttpHeadersInput Die Eigenschaften können aus der Headerausgabe der HTTP-Aktivität "Anforderung empfangen" zugeordnet werden.

Einige der Eigenschaften in der Antwort stimmen mit den Eigenschaften überein, die in der Eingabe verfügbar sind. Andere Eigenschaften für die Ausgabezuordnung werden nachfolgend erläutert:

Tabelle 3. Ausgabeeigenschaften zuordnen
Feldname Beschreibung
isMetadataDocumentRequest Der Wert 'true' dieser Eigenschaft gibt an, dass sich der Anforderungsaufruf (/serviceName/$metadata) auf das Metadatendokument bezieht, und das Antwortmetadatendokument ist in der Eigenschaft "metadataDocument" verfügbar.
metadataDocument Diese Eigenschaft enthält das Metadatendokument, wenn der Aufruf /serviceName/$metadata ausgeführt wird.
isServiceDocumentRequest Der Wert 'true' dieser Eigenschaft gibt an, dass sich der Anforderungsaufruf (/serviceName) auf das Servicedokument bezieht, und das Antwortservicedokument ist in der Eigenschaft "serviceDocument" verfügbar.
serviceDocument Diese Eigenschaft enthält das Servicedokument, wenn der Aufruf /serviceName ausgeführt wird.
resourcePath Diese Eigenschaft enthält den URL-Pfad des Aufrufs.
entities Diese Eigenschaft hat den Typ eines Zeichenfolgenarrays und enthält die Entitätsgruppennamen, die in der URL angefordert wurden. Beispiel: Wenn 'serviceName' den Wert '/test' hat und die ausgewählte Geschäftsdatenstruktur ein Konto ('account') aus dem obigen Schema ist, dann sieht die URL zum Abruf aller Kontendetails wie folgt aus: http://hostname/test/accounts. In diesem Beispiel ist der Entitätsgruppenname 'accounts'.
fieldName Wenn die Anforderung für einen in der Geschäftsdatenstruktur enthaltenen Feldnamen gilt, ist der Name des Felds in dieser Eigenschaft enthalten. Beispiel: Wenn die URL http://hostname/test/accounts(5)/accountName angefordert wird, hat 'fieldName' den Wert 'accountName'.
additionalpath Wenn ein weiteres Token wie $value oder $count in der Anforderungs-URL enthalten ist, ist dieser Wert in dieser Eigenschaft vorhanden.
primaryKeys

Wenn die Anforderungs-URL Primärschlüssel enthält, sind diese Informationen in diesem Feld vorhanden.

URL-Beispiele:

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

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

Die Struktur "primaryKeys" enthält den Feldnamen, den Wert und den Datentyp des Primärschlüssels.

readODataHttpHeadersOutput Enthält Headerinformationen, die in der Anforderung gesendet wurden.
readODataQueryParametersOutput Enthält die Standardabfrageparameter, die von OData definiert sind, sowie die zusätzlichen Abfrageparameter.
readODataOutputPayload Wenn die Nutzdaten in der Anforderung (bei POST- und PUT-Operationen) gesendet werden, werden die Nutzdaten analysiert und in die Struktur der Antwortgeschäftsdaten eingefügt.