Hi Lahiru, You can try the script mediator to build the expected response which is better than duplicating XSLTs.
Thanks Sudharma On Mon, Aug 21, 2017 at 9:15 PM, Lahiru Sandaruwan <lahi...@wso2.com> wrote: > Hi, > > I want to change the responding content type based on Accept header(JSON > or XML), sent in the request. My concern is the wrapping element of arrays. > For example, > > Required Json response, > > [ > { > "aaa" : "23432", > "bbb" : "234", > "ccc" : "asdfas" > }, > { > "aaa" : "23432", > "bbb" : "234", > "ccc" : "asdfas" > }, > { > "aaa" : "23432", > "bbb" : "234", > "ccc" : "asdfas" > } > ] > > Required XML response, > > <accounts> > <account> > <aaa>2342344</aaa> > <bbb>23432432432</bbb> > <ccc>asdasdasd</ccc> > </account> > <account> > <aaa>234324</aaa> > <bbb>32432</bbb> > <ccc>asdfasdf</ccc> > </account> > <account> > <aaa>234</aaa> > <bbb>34234</bbb> > <ccc>asdf</ccc> > </account> > </accounts> > > If I build local message with jsonArray and jsonElement as below, I could > get the JSON response correctly. But XML response would be wrong, as it is > not wrapped with accounts and account tags. > > <jsonArray> > <jsonElement> > <aaa>2342344</aaa> > <bbb>23432432432</bbb> > <ccc>asdasdasd</ccc> > </jsonElement> > <jsonElement> > <aaa>234324</aaa> > <bbb>32432</bbb> > <ccc>asdfasdf</ccc> > </jsonElement> > <jsonElement> > <aaa>234</aaa> > <bbb>34234</bbb> > <ccc>asdf</ccc> > </jsonElement> > </jsonArray> > > I'm building this message using a XSLT. I can think of using 2 XSLTs for > two types. But that will duplicate XSLT just for this. Is there a better > approach? > > Thanks. > -- > -- > > Lahiru Sandaruwan > Associate Technical Lead, > WSO2 Inc., http://wso2.com > > lean.enterprise.middleware > > m: +94773325954 <+94%2077%20332%205954> > e: lahi...@wso2.com b: https://medium.com/@lahirugmg > in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146 > > -- Sudharma Subasinghe, Software Engineer, WSO2 Inc. Email: sudhar...@wso2.com <hasi...@wso2.com> Mobile : +94 710 565 157 <%2B94%20718%20210%20200>
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev