[ 
https://issues.apache.org/activemq/browse/CAMEL-2950?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang resolved CAMEL-2950.
---------------------------------

    Resolution: Fixed

Committed the patch of camel-http, also merged the change into the camel-http4. 

> camel-http should support to be registered with other component name
> --------------------------------------------------------------------
>
>                 Key: CAMEL-2950
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-2950
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-http
>            Reporter: Willem Jiang
>            Assignee: Willem Jiang
>             Fix For: 2.5.0
>
>
> Create a new http component and register it with http2, 
> {code}
> HttpComponent httpComponent = new HttpComponent();
>         getContext().addComponent("http2", httpComponent);
> {code}
> when create a producer from it, you will get this error:
> {code}
> java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
>       at 
> org.apache.camel.component.http.HttpMethods.createMethod(HttpMethods.java:49)
>       at 
> org.apache.camel.component.http.HttpProducer.createMethod(HttpProducer.java:246)
>       at 
> org.apache.camel.component.http.HttpProducer.process(HttpProducer.java:63)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:185)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:151)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:89)
>       at 
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
>       at 
> org.apache.camel.processor.MulticastProcessor.doProcess(MulticastProcessor.java:278)
>       at 
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:240)
>       at 
> org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:157)
>       at 
> org.apache.camel.processor.RecipientList.sendToRecipientList(RecipientList.java:136)
>       at 
> org.apache.camel.processor.RecipientList.process(RecipientList.java:101)
>       at 
> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53)
>       at 
> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82)
>       at 
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:97)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:185)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:151)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:89)
>       at 
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
>       at 
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228)
>       at org.apache.camel.processor.Pipeline.process(Pipeline.java:75)
>       at 
> org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:56)
>       at 
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
>       at 
> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53)
>       at 
> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82)
>       at 
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:97)
>       at 
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:185)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:151)
>       at 
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:89)
>       at 
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
>       at 
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228)
>       at org.apache.camel.processor.Pipeline.process(Pipeline.java:75)
>       at 
> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:70)
>       at 
> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
>       at 
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
>       at 
> org.apache.camel.component.http.CamelServlet.service(CamelServlet.java:71)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:530)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1216)
>       at 
> org.eclipse.jetty.servlets.MultiPartFilter.doFilter(MultiPartFilter.java:94)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:425)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:931)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:362)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:867)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
>       at org.eclipse.jetty.server.Server.handle(Server.java:334)
>       at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:559)
>       at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:992)
>       at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:541)
>       at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:203)
>       at 
> org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:406)
>       at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:462)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
>       at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.reflect.InvocationTargetException
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>       at 
> org.apache.camel.component.http.HttpMethods.createMethod(HttpMethods.java:47)
>       ... 56 more
> Caused by: java.lang.IllegalStateException: unsupported protocol: 'http2'
>       at 
> org.apache.commons.httpclient.protocol.Protocol.lazyRegisterProtocol(Protocol.java:149)
>       at 
> org.apache.commons.httpclient.protocol.Protocol.getProtocol(Protocol.java:117)
>       at org.apache.commons.httpclient.HttpHost.<init>(HttpHost.java:107)
>       at 
> org.apache.commons.httpclient.HttpMethodBase.setURI(HttpMethodBase.java:280)
>       at 
> org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
>       at 
> org.apache.commons.httpclient.methods.GetMethod.<init>(GetMethod.java:89)
>       ... 61 more
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to