Welcome Guest! Log in
×

Notice

The forum is in read only mode.
Stambia versions 2.x, 3.x, S17, S18, S19 and S20 are reaching End of Support January, 15th, 2024. Please consider upgrading to the supported Semarchy xDI versions. See Global Policy Support and the Semarchy Documentation.

The Stambia User Community is moving to Semarchy! All the applicable resources have already been moved or are currently being moved to their new location. Read more…

Topic-icon Solved Webservice Input Json : empty value

More
23 Jan 2019 16:37 - 23 Jan 2019 16:41 #1 by Sylvie INGABIRE
Webservice Input Json : empty value was created by Sylvie INGABIRE
Bonjour,

J'appelle un webservice auquel j'envoie un json dont un champ (value) de type string est parfois vide. Dans le json généré à l'appel (.content.in) j'ai null quand le champ est vide et je voudrais plutôt avoir "".
Comment puis-je faire pour avoir "" si le champ est vide? (Le fait d'avoir null pose problème à l'API cible)
J'ai testé en mettant '' dans le mapping du champ mais j'ai toujours null.

Exemple de ce que j'ai pour le moment :
{
"referencecode": "8203218678005",
"idorder": "0",
"downgrade": null,
"idfamily": "SC"
}

Ce que je voudrais avoir :
{
"referencecode": "8203218678005",
"idorder": "0",
"downgrade": "",
"idfamily": "SC"
}

Merci pour votre aide.
Last edit: 23 Jan 2019 16:41 by Sylvie INGABIRE.
More
24 Jan 2019 12:11 #2 by Thomas BLETON
Replied by Thomas BLETON on topic Webservice Input Json : empty value
Est-ce que la source de données est une base Oracle ?
Oracle a la particularité de considérer les chaînes vides comme une valeur NULL :

>select EMP_ID, '' c1 from SUPPORT01.EMPLOYEE where emp_id = 1
1;<null>
More
24 Jan 2019 16:04 #3 by Sylvie INGABIRE
Replied by Sylvie INGABIRE on topic Webservice Input Json : empty value
Oui, la source est Oracle.

Est-ce que c'est possible de faire en sorte de générer le champ quand il a une valeur et de ne pas le générer si non?
More
24 Jan 2019 17:26 #4 by Thomas BLETON
Replied by Thomas BLETON on topic Webservice Input Json : empty value
Ha oui je n'avais pas pensé à cette option, c'est possible à partir de la version 17.5.6 du Runtime.
Pour l'activer dans votre mapping, renseignez le paramètre "Nil Behavior" à "ForceToFalse" sur le template "INTEGRATION Rdbms to Wsdl".
More
25 Jan 2019 10:27 - 05 Feb 2019 15:36 #5 by Sylvie INGABIRE
Replied by Sylvie INGABIRE on topic Webservice Input Json : empty value
Avec le paramètre "Nil Behavior" à "ForceToFalse" nous arrivons bien à générer le champ uniquement quand il a une valeur.
Last edit: 05 Feb 2019 15:36 by Sylvie INGABIRE.