Hi,
In the development of the connector for LinkedIn, we are getting problem
related to sending JSON via the POST method.
LinkedIn requires a JSON string in the following format to be posted:
{
"contentType":"linkedin-html",
"body":"update body"
}
The properties defined in the synapse template for this method are as
follows:
<property name="uri.var.linkedinUrl" expression="$func:appUri" />
<property name="uri.var.accessToken" expression="$func:accessToken" />
<property name="uri.var.contentType" expression="$func:contentType" />
<property name="uri.var.postBody" expression="$func:postBody" />
I have turned on Axis2 JSON stream builder options, and also have added the
messageType Axis2 property to the synapse template.
When using a payload factory in the following manner:
<payloadFactory media-type="json">
<format>
{
"contentType":"$1",
"body":"$2"
}
</format>
<args>
<arg
expression="get-property('uri.var.contentType')" />
<arg
expression="get-property('uri.var.postBody')" />
</args>
</payloadFactory>
The JSON being sent out by the ESB to the LinkedIn API (monitored via TCP
Mon) is this:
{
"accessToken":"AQWvIwvrmVtaIp-o0PCeFfLtLXxNGmIf5pYaRrLUriuts-baLgWVp_6eYBTEDOepQZ5BOb34OLY2m3X4lWNMiCPncKPQ6iNE4RJ-cXAwLvdQXjHE6mg6WK_nNv184XYjpSV0wqr6TXVknJHy5B5RaJSfCja6KG7ScL7SniN7fLaew3GNtLg",
"contentType":"linkedin-html",
"postBody":"Hello",
"jsonObject":{
"contentType":"linkedin-html",
"body":"Hello"
}
}
Upon removing the PayloadFactory and sending, the ESB sends out the
following JSON object:
{
"appUri":"https:\/\/api.linkedin.com\/v1",
"accessToken":"AQWvIwvrmVtaIp-o0PCeFfLtLXxNGmIf5pYaRrLUriuts-baLgWVp_6eYBTEDOepQZ5BOb34OLY2m3X4lWNMiCPncKPQ6iNE4RJ-cXAwLvdQXjHE6mg6WK_nNv184XYjpSV0wqr6TXVknJHy5B5RaJSfCja6KG7ScL7SniN7fLaew3GNtLg",
"contentType":"linkedin-html",
"postBody":"Hello"
}
Both formats are not accepted by the LinkedIn API.
I'd greatly appreciate if I could get some suggestions on how to format this
JSON properly via the synapse template.
Thanks.
--
View this message in context:
http://wso2-oxygen-tank.10903.n7.nabble.com/JSON-string-in-request-being-reformatted-by-ESB-tp90183.html
Sent from the WSO2 Development mailing list archive at Nabble.com.
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev