Mapper Not Wrapping Array Content in Separate Objects
Oracle Integration Classic (Version 20.1.3)
Hi Community
We are using OIC Classic with the REST Adapter. The REST web service requires a POST and expects the following payload structure:
{ "name": "A string", "parameters": [ { "InvoiceNumber": "A string" }, { "BusinessUnit": "A string" }, { "SupplierName": "A string" } ] }
When we wire this up via the mapper, the result is that OIC sends the request payload without the values enclosed in a single object rather than each value in a separate object:
{ "name": "ValidateInvoice", "parameters": [ { "InvoiceNumber": "ABCD-1234" "BusinessUnit": "My Business Unit" "SupplierName": "ABC Limited" } ] }
The XSLT in the mapper is as follows:
<xsl:template match="/" xml:id="id_11"> <nstrgmpr:execute xml:id="id_12"> <ns35:request-wrapper xml:id="id_41"> <ns35:parameters xml:id="id_42"> <ns35:InvoiceNumber xml:id="id_47"> <xsl:value-of xml:id="id_48" select="$GetInvoiceHeader/nsmpr1:executeResponse/ns25:response-wrapper/ns25:data/ns25:data/ns25:INVOICE_NUMBER"/> </ns35:InvoiceNumber> <ns35:BusinessUnit xml:id="id_45"> <xsl:value-of xml:id="id_46" select="$GetInvoiceHeader/nsmpr1:executeResponse/ns25:response-wrapper/ns25:data/ns25:data/ns25:BUSINESS_UNIT"/> </ns35:BusinessUnit> <ns35:Supplier xml:id="id_43"> <xsl:value-of xml:id="id_44" select="$GetInvoiceHeader/nsmpr1:executeResponse/ns25:response-wrapper/ns25:data/ns25:data/ns25:SUPPLIER_NAME"/> </ns35:Supplier> </ns35:parameters> </ns35:request-wrapper> </nstrgmpr:execute> </xsl:template>
Tagged:
0