[ https://issues.apache.org/jira/browse/CAMEL-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-9596. -------------------------------- Resolution: Fixed Assignee: Claus Ibsen > REST DSL - Jetty component ignores custom HTTP Binding > ------------------------------------------------------- > > Key: CAMEL-9596 > URL: https://issues.apache.org/jira/browse/CAMEL-9596 > Project: Camel > Issue Type: Improvement > Components: camel-jetty > Affects Versions: 2.16.2 > Environment: Karaf, Blueprint > Reporter: Ralf Steppacher > Assignee: Claus Ibsen > Fix For: 2.16.3, 2.17.0 > > > I am attempting to set a custom HTTP binding on the Jetty component used with > the REST DSL: > {code:xml} > <bean id="jettyNoStackTraceHTTPBinding" > class="ch.vivates.vel.rest.JettyNoStacktraceHttpBinding" /> > <camelContext id="vel-jetty-rest-service" allowUseOriginalMessage="false" > xmlns="http://camel.apache.org/schema/blueprint" streamCache="false"> > <restConfiguration component="jetty" scheme="http" > host="{{vel.rest.host}}" port="{{vel.rest.port}}" > contextPath="{{vel.rest.contextpath}}" bindingMode="json"> > <endpointProperty key="httpBindingRef" > value="jettyNoStackTraceHTTPBinding" /> > </restConfiguration> > <!-- ... --> > </camelContext> > {code} > The http binding is not picked up though. At runtime the custom binding does > not get triggered. > The logs show the generated endpoint URL without the {{httpBindingRef}} query > parameter: > {noformat} > 2016-02-12 16:22:15,454 | INFO | pool-37-thread-1 | BlueprintCamelContext > | 64 - org.apache.camel.camel-core - 2.16.2 | | Route: route1 > started and consuming from: > Endpoint[jetty:http://0.0.0.0:8181/vivates/vel/event/%7Bid%7D?httpMethodRestrict=PUT] > {noformat} > However, if I try to specify a binding bean that does not exist I receive an > error during context ramp-up (as would be expected); the endpoint URI logged > in the error message includes the {{httpBindingRef}} query parameter: > {noformat} > 2016-02-12 16:26:17,194 | ERROR | Thread-35 | BlueprintCamelContext > | 61 - org.apache.camel.camel-blueprint - 2.16.2 | | Error occurred > during starting Camel: CamelContext(vel-jetty-rest-service) due Failed to > resolve endpoint: > jetty://http://0.0.0.0:8181/vivates/vel/event/%7Bid%7D?httpBindingRef=thisBindingBeanDoesNotExist&httpMethodRestrict=PUT > due to: No bean could be found in the registry for: > thisBindingBeanDoesNotExist of type: org.apache.camel.http.common.HttpBinding > org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: > jetty://http://0.0.0.0:8181/vivates/vel/event/%7Bid%7D?httpBindingRef=thisBindingBeanDoesNotExist&httpMethodRestrict=PUT > due to: No bean could be found in the registry for: > thisBindingBeanDoesNotExist of type: org.apache.camel.http.common.HttpBinding > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)