You can set the header, but it is not used in the code. The method calls form.getWebRepresentation() which is hard coded to use 'application/x-www-form-urlencoded'.
I will look into creating a jira issue and a test case, and possibly provide a fix as well. Rich William Tam wrote: > > Have you tried setting the Content-Type header (to "application/json") > in your request Camel message? It looks like > DefaultRestletBinding.populateRestletRequestFromExchange() method will > add the header to the Form. If it does not work, any chance you are > create a Jira with a testcase? A patch would be great, too. :-) > > Bee1000 wrote: >> Using http does work, but it still seems like a bug to hard code the >> encoding >> of post data for restlet. I thought post data could be any text or >> binary >> data. It seems like this reduces the usefulness of the restlet camel >> component. Just out of curiosity, is there another reason why the >> encoding >> is hardcoded? (Perhaps to be more precise, the message body is being >> encoded in the RESTLET component, which for POST means that post data is >> being encoded.) >> >> >> >> willem.jiang wrote: >> >>> Hi, >>> >>> I think you can try to use Camel-Http component, which is leverage >>> common http client to invoke the http service. >>> >>> Willem >>> >>> Bee1000 wrote: >>> >>>> I'm trying to post documents to couchdb using restlet but the restlet >>>> component is hard coded to url encode the post data. This makes the >>>> JSON >>>> text i'm posting invalid. Do I need to use some other component or is >>>> there >>>> a way around this? >>>> >>> >>> >> >> > > -- View this message in context: http://old.nabble.com/Restlet-url-encoding-post-data--tp28197024p28218645.html Sent from the Camel - Users mailing list archive at Nabble.com.
