You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by humayun0156 <hu...@gmail.com> on 2013/07/24 12:43:08 UTC

HTTP component URL character endoding

Hi,
I've used to get a URL using HTTP component. My route looks like:
from("direct:epGet")
                .setHeader(Exchange.HTTP_METHOD, constant("GET"))
                .setProperty("url", simple("${body}"))
                .setHeader(Exchange.HTTP_CHARACTER_ENCODING,
constant("UTF-8"))
                .recipientList(simple("${body}&" + epiAuthenticationString))
                .convertBodyTo(Document.class)
                .process(objectCreationProcessor);

i sent the body as :
http://myhost.com/user?fromDate=2013-07-24T10%3A57%3A35%2B0600 but when it
creating the End Point URI it looks like
http://myhost.com/user?fromDate=2013-07-24T10%3A57%3A35+0600 
the %2B is replaced by + sign that so it not fetch the body and send 400
error.



--
View this message in context: http://camel.465427.n5.nabble.com/HTTP-component-URL-character-endoding-tp5736196.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: HTTP component URL character endoding

Posted by Willem jiang <wi...@gmail.com>.
Hi,

I think it may relates the CXF endpoint uri safe encoding method.
You can set the header of Exchange.HTTP_QUERY to override the setting of URI to workaround it.


--  
Willem Jiang

Red Hat, Inc.
FuseSource is now part of Red Hat
Web: http://www.fusesource.com | http://www.redhat.com
Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
          http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
Twitter: willemjiang  
Weibo: 姜宁willem





On Wednesday, July 24, 2013 at 6:43 PM, humayun0156 wrote:

> Hi,
> I've used to get a URL using HTTP component. My route looks like:
> from("direct:epGet")
> .setHeader(Exchange.HTTP_METHOD, constant("GET"))
> .setProperty("url", simple("${body}"))
> .setHeader(Exchange.HTTP_CHARACTER_ENCODING,
> constant("UTF-8"))
> .recipientList(simple("${body}&" + epiAuthenticationString))
> .convertBodyTo(Document.class)
> .process(objectCreationProcessor);
>  
> i sent the body as :
> http://myhost.com/user?fromDate=2013-07-24T10%3A57%3A35%2B0600 but when it
> creating the End Point URI it looks like
> http://myhost.com/user?fromDate=2013-07-24T10%3A57%3A35+0600  
> the %2B is replaced by + sign that so it not fetch the body and send 400
> error.
>  
>  
>  
> --
> View this message in context: http://camel.465427.n5.nabble.com/HTTP-component-URL-character-endoding-tp5736196.html
> Sent from the Camel - Users mailing list archive at Nabble.com (http://Nabble.com).