camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott England-Sullivan (JIRA)" <>
Subject [jira] [Commented] (CAMEL-5458) Jetty/HTTP Pathless Consumer matchOnUriPrefix=true Breaks Producer bridgeEndpoint=true
Date Mon, 13 Aug 2012 15:36:38 GMT


Scott England-Sullivan commented on CAMEL-5458:

There two issues then:

# It will thrown an exception if you make a request to root.  If you issue a request to *http://localhost:10020*
the following route will throw an HttpOperationUnsupportedException.  The code doesn't handle
a root path of "/" or "".:
# The behavior I am trying to achieve is probably better thought of as redirection.  If you
change or alter the headers any error will display the producer endpoint and not the original
path used to connect to the consumer endpoint.  Therefore, what is needed is that the producer
should ignore all headers and make the request to the given endpoint and change nothing in
the headers.  While I agree that I don't want another property I am not 100% convinced how
to achieve this behavior.

I have a fix for item 1.  I don't know what is the best approach for 2.


> Jetty/HTTP Pathless Consumer matchOnUriPrefix=true Breaks Producer bridgeEndpoint=true
> --------------------------------------------------------------------------------------
>                 Key: CAMEL-5458
>                 URL:
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-http, camel-jetty
>    Affects Versions: 2.10.0
>            Reporter: Scott England-Sullivan
>            Assignee: Willem Jiang
>         Attachments: CAMEL-5458.patch, CAMEL-5458-v2.patch, CAMEL-5458-willem.patch
> When a Jetty/HTTP endpoint that has the matchOnUriPrefix=true option set and is configured
to match any URI (no path is specified) the HttpHelper concatenates the consumer path to the
producer endpoint creating an HttpOperationUnsupportedException.
> For example the following will process as expected and the HttpHelper class will create
the http://localhost:10021/proxy/ping consumer URI:
> {code}
> from("jetty:http://localhost:10020/ping?matchOnUriPrefix=true")
>     .to("jetty:http://localhost:10021/proxy/ping?bridgeEndpoint=true");
> {code}
> While this code will create http://localhost:10021/proxy/ping/ping and create the exception
(the only difference is there isn't a path on the consumer):
> {code}
> from("jetty:http://localhost:10020?matchOnUriPrefix=true")
>     .to("jetty:http://localhost:10021/proxy/ping?bridgeEndpoint=true");
> {code}
> Test case and patch will be uploaded shortly.
> Thanks,
> Scott ES

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message