Hi Udara,

Since you have to create the XML using the XSLT and the XSLT have to return
an processing instruction, you have to have the following XSLT:

<xsl:when test="count(addresses)=0">
   <jsonObject>
      <xsl:processing-instruction
name="xml-multiple">addresses</xsl:processing-instruction>
   </jsonObject>
</xsl:when>

Regards
Senduran

On Wed, Oct 5, 2016 at 12:18 PM, Udara Liyanage <ud...@wso2.com> wrote:

> Hi Senduran,
>
> I need to create json array within synapse configs coz backend expects an
> array
>
> On Wed, Oct 5, 2016 at 8:11 AM, Senduran Balasubramaniyam <
> sendu...@wso2.com> wrote:
>
>> Hi Udara,
>>
>> I tried the following API and the request, (I am using ESB 500)
>> API:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <api xmlns="http://ws.apache.org/ns/synapse";
>>      name="XMLtoJSON"
>>      context="/XMLtoJSON">
>>    <resource methods="POST">
>>       <inSequence>
>>          <property name="messageType" value="application/json"
>> scope="axis2"/>
>>          <respond/>
>>       </inSequence>
>>    </resource>
>> </api>
>>
>>
>> Request:
>>
>> curl -v -d '<jsonObject><?xml-multiple addresses?></jsonObject>'
>> http://localhost:8280/XMLtoJSON -H "Content-type: application/xml"
>>
>> Regards
>> Senduran
>>
>>
>> On Tue, Oct 4, 2016 at 6:36 PM, Udara Liyanage <ud...@wso2.com> wrote:
>>
>>> Hi Senduran,
>>>
>>> Below is xslt snippet I tried.
>>>
>>>       <xsl:choose>
>>>         <xsl:when test="count(addresses)=0">
>>>           <jsonObject>
>>>             <?xml-multiple addresses?>
>>>           </jsonObject>
>>>         </xsl:when>
>>>
>>> On Tue, Oct 4, 2016 at 6:26 PM, Udara Liyanage <ud...@wso2.com> wrote:
>>>
>>>> Hi Senduran,
>>>>
>>>> That I tried already. But it produced
>>>>
>>>> {"root":null}
>>>>
>>>> On Tue, Oct 4, 2016 at 5:37 PM, Senduran Balasubramaniyam <
>>>> sendu...@wso2.com> wrote:
>>>>
>>>>> Hi Udara,
>>>>>
>>>>> You can get an empty addresses array by following:
>>>>>
>>>>> <jsonObject>
>>>>>    <?xml-multiple addresses?>
>>>>> </jsonObject>
>>>>>
>>>>> Regards
>>>>> Senduran
>>>>>
>>>>> On Tue, Oct 4, 2016 at 12:09 PM, Udara Liyanage <ud...@wso2.com>
>>>>> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I want to generate an empty json array ("addresses":[]) when
>>>>>> addresses count is zero. I tried below as [1] which resulted only in 
>>>>>> null.
>>>>>>
>>>>>>
>>>>>>      <xsl:if test="count(addresses)=0">
>>>>>>         <jsonObject>
>>>>>>           <jsonArray></jsonArray>
>>>>>>         </jsonObject>
>>>>>>       </xsl:if>
>>>>>>
>>>>>>
>>>>>> [1] https://docs.wso2.com/display/ESB500/JSON+Support
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Udara Liyanage
>>>>>> Software Engineer
>>>>>> WSO2, Inc.: http://wso2.com
>>>>>> lean. enterprise. middleware
>>>>>>
>>>>>> Blog: http://udaraliyanage.wordpress.com
>>>>>>
>>>>>> _______________________________________________
>>>>>> Dev mailing list
>>>>>> Dev@wso2.org
>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Senduran *
>>>>> Senior Software Engineer,
>>>>> WSO2, Inc.;  http://wso2.com/ <http://wso2.com/>
>>>>> Mobile: +94 77 952 6548
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> Udara Liyanage
>>>> Software Engineer
>>>> WSO2, Inc.: http://wso2.com
>>>> lean. enterprise. middleware
>>>>
>>>> Blog: http://udaraliyanage.wordpress.com
>>>>
>>>
>>>
>>>
>>> --
>>>
>>> Udara Liyanage
>>> Software Engineer
>>> WSO2, Inc.: http://wso2.com
>>> lean. enterprise. middleware
>>>
>>> Blog: http://udaraliyanage.wordpress.com
>>>
>>
>>
>>
>> --
>> *Senduran *
>> Senior Software Engineer,
>> WSO2, Inc.;  http://wso2.com/ <http://wso2.com/>
>> Mobile: +94 77 952 6548
>>
>
>
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> Blog: http://udaraliyanage.wordpress.com
>



-- 
*Senduran *
Senior Software Engineer,
WSO2, Inc.;  http://wso2.com/ <http://wso2.com/>
Mobile: +94 77 952 6548
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to