Activité Ecrire dans OData

Cette activité utilise la sortie de l'activité Lire OData en entrée ainsi que d'autres détails tels que la charge, le code d'état http, etc., puis génère la sortie qui doit être re-transférée comme réponse.

Propriétés de configuration de l'activité Ecrire dans OData

Tableau 1. Propriétés du panneau de configuration
Nom de zone Description
Version d'OData La version d'OData à utiliser par cette activité. La même version doit être utilisée pour toutes les activités dans une orchestration unique. La seule version prise en charge est actuellement la version 4.0.
Sélectionner des données d'entrée Sélectionnez une des options définissant la façon dont la structure de données métier doit être fournie à l'activité Lire OData. L'API OData est créée en fonction de la ou les structures métier fournies.
  • Schéma XML existant : sélectionnez cette option pour rechercher un schéma existant disponible dans l'orchestration. Un seul objet peut être sélectionné à l'aide de cette option, ce qui signifie que l'API OData ne prend en charge qu'un seul objet de niveau supérieur. Cette option est utilisée si l'API OData doit être exposée par les orchestrations Cast Iron.
  • URL de noeud final (API OData) : sélectionnez cette option pour communiquer avec une application d'API OData externe. Dans ce cas, Cast Iron joue le rôle de client. L'URL racine de service de l'application externe doit être fournie. Cette option n'est pas prise en charge à partir de la version 7.5.1 et sera ajoutée dans les versions futures.
  • Nouveau schéma XML pour la prise en charge de plusieurs entités : sélectionnez cette option pour que plusieurs objets de niveau supérieur soient pris en charge dans l'API OData. Un schéma XML contenant un ou plusieurs éléments globaux doivent être collés dans la zone de texte fournie. Cette option est utilisée si l'API OData doit être exposée par les orchestrations Cast Iron. Par exemple, reportez-vous à l'exemple de schéma XML présenté ci-dessous.

Voici un exemple de schéma XML contenant des objets account et product :

<?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>
Tableau 2. Mappage des propriétés d'entrée
Nom de zone Description
serviceName Il s'agit du nom de l'API ReST OData qui fera partie de l'URL. La valeur de cette propriété doit être identique à celle de la propriété "URL (chemin après le nom d'hôte)" dans le panneau Configurer de l'activité HTTP "Recevoir demande". Lorsqu'une URL portant ce nom (par exemple, http://host/serviceName) est sélectionnée, le document de service est fourni dans la réponse.
protocol Protocole pris en charge par votre API ReST OData. Cette valeur doit être paramétrée par défaut sur une des deux valeurs prises en charge (HTTP ou HTTPS).
host Hôte sur lequel l'API est en cours d'exécution. La valeur de cette propriété doit être mappée à partir de la sortie de l'activité HTTP "Recevoir demande".
method Méthode http de la demande. La valeur de cette propriété doit être mappée à partir de la sortie de l'activité HTTP "Recevoir demande".
Accept Valeur de l'en-tête Accept. La valeur de cette propriété peut être paramétrée sur la valeur par défaut ou mappée à partir de la sortie de l'activité HTTP "Recevoir demande". Les valeurs prises en charge sont application/json et application/xml.
Content-Type Valeur de l'en-tête Content-Type. La valeur de cette propriété peut être paramétrée sur la valeur par défaut ou mappée à partir de la sortie de l'activité HTTP "Recevoir demande". Les valeurs prises en charge sont application/json et application/xml.
resourcePath Cette propriété contient le chemin d'accès à l'URL de l'appel et est mappée à partir de la sortie de l'activité Lire OData.
entities Cette propriété est de type tableau de chaînes et contient le(s) nom(s) de jeu d'entités demandés dans l'URL et est mappée à partir de la sortie de l'activité Lire OData. Par exemple, si le nom de service (serviceName) est /test et que la structure de données métier sélectionnée est account (dans le schéma ci-dessus), l'URL permettant d'obtenir tous les détails de compte est http://hostname/test/accounts. Dans cet exemple, le nom du jeu d'entités est accounts.
fieldName Si la demande de nom de zone est présente dans une structure de données métier, le nom de la zone sera présent dans cette propriété. La valeur de cette propriété est mappée à partir de la sortie de l'activité Lire OData. Par exemple, si l'URL demandée est http://hostname/test/accounts(5)/accountName, la valeur de fieldName sera accountName.
additionalpath Si l'URL de demande contient un jeton supplémentaire tel que $value ou $count, cette valeur sera présente dans cette propriété et est mappée à partir de la sortie de l'activité Lire OData.
primaryKeys

Si l'URL de demande contient des clés primaires, cette information est présente dans cette zone et la valeur est mappée à partir de la sortie de l'activité Lire OData.

Exemples d'URL :

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

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

La structure primaryKeys va contenir le nom de zone, la valeur et le type de données de la clé primaire.

status

Contient le code d'état HTTP qui est renvoyé dans la réponse pour l'opération DELETE.

writeODataInput

La structure d'objet métier qui doit être sérialisée et renvoyée dans la réponse.

writeODataQueryParametersInput

Les paramètres de requête à appliquer aux données de réponse. Les valeurs sont mappées à partir de la sortie de l'activité Lire OData.

writeODataHttpHeadersInput

Les en-têtes http à appliquer aux données de réponse. Les valeurs sont mappées à partir de la sortie de l'activité Lire OData.

Tableau 3. Mappage des propriétés de sortie
Nom de zone Description
writeODataOutput Les données à envoyer en réponse. Elles contiennent le code d'état HTTP, le message HTTP et la charge de réponse.
writeODataHttpHeadersOutput Cette propriété contient les en-têtes HTTP à envoyer en réponse.