Return-Path: Delivered-To: apmail-camel-users-archive@www.apache.org Received: (qmail 36298 invoked from network); 14 Dec 2009 10:12:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 14 Dec 2009 10:12:10 -0000 Received: (qmail 15370 invoked by uid 500); 14 Dec 2009 10:12:10 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 15304 invoked by uid 500); 14 Dec 2009 10:12:10 -0000 Mailing-List: contact users-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@camel.apache.org Delivered-To: mailing list users@camel.apache.org Received: (qmail 15294 invoked by uid 99); 14 Dec 2009 10:12:10 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 14 Dec 2009 10:12:10 +0000 X-ASF-Spam-Status: No, hits=3.7 required=10.0 tests=HTML_MESSAGE,NORMAL_HTTP_TO_IP,SPF_PASS,WEIRD_PORT X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of cmoulliard@gmail.com designates 209.85.217.209 as permitted sender) Received: from [209.85.217.209] (HELO mail-gx0-f209.google.com) (209.85.217.209) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 14 Dec 2009 10:11:56 +0000 Received: by gxk1 with SMTP id 1so3040988gxk.16 for ; Mon, 14 Dec 2009 02:11:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type; bh=+A5svOAiRkmdWO0tWE8R5YiOgP3yQPjmC7+MnmY3GRM=; b=iWKPyE5nyAdAJbZ1g9DQbdgoOJW8aAAsTLm24ZX5F7zk1Qg3bYKJk+cn0PnneYM1DW wpOa0kgAyoJtoiyqu4Q5BOYhDQThKxw2PIcZDMb2xkUn6CygISHKaBiedH303z6532Gk rkniYas7FrX4HUJ+hUmOIAJoikl9in4lgHPPc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=Eo1Nkrhl38KJ52YJ4P5WsIuSR9aJPpIS1siDqWe68vPG6bpAnhxgq7jym8UfxUHl0M xwLxC1B4ucuoawa0PlRks/4vn1jKUVVYBylZrCJCEg6/L/GnAtUIOyyuHggw9eau64T8 7JTd5KPPfBfJ8ZTCCSyZjZyDqWJDQrlPo4v3w= MIME-Version: 1.0 Received: by 10.101.179.23 with SMTP id g23mr6497858anp.171.1260785494755; Mon, 14 Dec 2009 02:11:34 -0800 (PST) In-Reply-To: References: <4B25FB5C.3070300@gmail.com> <4B25FE9A.5040802@gmail.com> Date: Mon, 14 Dec 2009 11:11:34 +0100 Message-ID: Subject: Re: camel-jetty and loadbalancing From: Charles Moulliard To: users@camel.apache.org Content-Type: multipart/alternative; boundary=00504502d5678d8b2f047aad7f89 X-Virus-Checked: Checked by ClamAV on apache.org --00504502d5678d8b2f047aad7f89 Content-Type: text/plain; charset=ISO-8859-1 Here is the trace received using tcpmon request send : GET /reportservice/incidents/123/ HTTP/1.1 Host: localhost:9999 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive error HTTP/1.1 500 Internal Server Error Content-Type: text/plain; charset=iso-8859-1 Transfer-Encoding: chunked Server: Jetty(6.1.x) 12A2 org.apache.commons.httpclient.NoHttpResponseException: The server localhost failed to respond at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1976) at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) at org.apache.camel.component.http.HttpProducer.executeMethod(HttpProducer.java:164) at org.apache.camel.component.http.HttpProducer.process(HttpProducer.java:78) at org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) at org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) at org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) 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:162) at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) at org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) at org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) at org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:41) 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:162) at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) at org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) at org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) at org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54) 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:53) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:363) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:864) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:533) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:207) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522) 0 Charles Moulliard Senior Enterprise Architect Apache Camel Committer ***************************** blog : http://cmoulliard.blogspot.com twitter : http://twitter.com/cmoulliard Linkedlin : http://www.linkedin.com/in/charlesmoulliard Apache Camel Group : http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm On Mon, Dec 14, 2009 at 10:10 AM, Charles Moulliard wrote: > If I use this option, I get now : > > org.apache.commons.httpclient.NoHttpResponseException: The server localhost > failed to respond > at > org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1976) > at > org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735) > at > org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098) > at > org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) > > from the stacktrace of the client sending the HTTP request > > > Charles Moulliard > Senior Enterprise Architect > Apache Camel Committer > > ***************************** > blog : http://cmoulliard.blogspot.com > twitter : http://twitter.com/cmoulliard > Linkedlin : http://www.linkedin.com/in/charlesmoulliard > > Apache Camel Group : > http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm > > > On Mon, Dec 14, 2009 at 10:00 AM, Willem Jiang wrote: > >> Hi Charles, >> >> Please check out this option for http producer. >> >> throwExceptionOnFailure true Camel 2.0: Option to disable >> throwing the HttpOperationFailedException in case of failed responses from >> the remote server. This allows you to get all responses regardles of the >> HTTP status code. >> >> [1] http://camel.apache.org/http.html >> >> Willem >> >> >> Charles Moulliard wrote: >> >>> Using this option, I get the following error : >>> >>> org.apache.camel.component.http.HttpOperationFailedException: HTTP >>> operation >>> failed invoking http://0.0.0.0:8282/reportservice/incidents with >>> statusCode: >>> 407 >>> at >>> >>> org.apache.camel.component.http.HttpProducer.populateHttpOperationFailedException(HttpProducer.java:150) >>> at >>> >>> org.apache.camel.component.http.HttpProducer.process(HttpProducer.java:92) >>> at >>> >>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) >>> at >>> >>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) >>> at >>> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) >>> at >>> org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) >>> at >>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) >>> 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:162) >>> at >>> >>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) >>> at >>> >>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >>> at >>> >>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) >>> at >>> >>> org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:41) >>> 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:162) >>> at >>> >>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) >>> at >>> >>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) >>> at >>> >>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >>> at >>> >>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) >>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) >>> at >>> >>> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54) >>> 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:53) >>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) >>> at >>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) >>> at >>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:363) >>> at >>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) >>> at >>> >>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) >>> at >>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) >>> at org.mortbay.jetty.Server.handle(Server.java:324) >>> at >>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534) >>> at >>> >>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:864) >>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:533) >>> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:207) >>> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) >>> at >>> >>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) >>> at >>> >>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522) >>> >>> Here is the content of the log >>> >>> 09:53:15,484 | INFO | 7786908@qtp2-1 | Tracer >>> | >>> rg.apache.camel.processor.Logger 88 | >>> 518e911d-e3d3-451f-a54b-6de2e8c2fd49 >>> >>>> (route2) from(http://0.0.0.0:8181) --> setExchangePattern: InOut <<< >>>>>> >>>>> Pattern:InOut, Headers:{Keep-Alive=300, >>> Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>> CamelHttpUri=/reportservice/incidents/123/, CamelHttpUrl= >>> http://localhost:8181/reportservice/incidents/123/, CamelHttpMethod=GET, >>> Host=localhost:8181, CamelHttpPath=/reportservice/incidents/123/, >>> Accept-Encoding=gzip,deflate, Connection=keep-alive, >>> CamelHttpCharacterEncoding=null, Accept-Language=en-us,en;q=0.5, >>> CamelHttpQuery=null, User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; >>> en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5, >>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Content-Type=null}, >>> BodyType:null, Body:null >>> 09:53:15,500 | INFO | 7786908@qtp2-1 | Tracer >>> | >>> rg.apache.camel.processor.Logger 88 | >>> 518e911d-e3d3-451f-a54b-6de2e8c2fd49 >>> >>>> (route2) setExchangePattern: InOut --> http://0.0.0.0:8282 <<< >>>>>> >>>>> Pattern:InOut, Headers:{CamelHttpCharacterEncoding=null, >>> Connection=keep-alive, User-Agent=Mozilla/5.0 (Windows; U; Windows NT >>> 5.1; >>> en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5, Host=localhost:8181, >>> Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>> CamelHttpPath=/reportservice/incidents/123/, CamelHttpMethod=GET, >>> Keep-Alive=300, CamelHttpUri=/reportservice/incidents/123/, >>> Accept-Language=en-us,en;q=0.5, CamelHttpUrl= >>> http://localhost:8181/reportservice/incidents/123/, >>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Content-Type=null, >>> Accept-Encoding=gzip,deflate, CamelHttpQuery=null}, BodyType:null, >>> Body:null >>> 09:53:15,515 | INFO | 7786908@qtp2-1 | Tracer >>> | >>> rg.apache.camel.processor.Logger 88 | >>> 518e911d-e3d3-451f-a54b-6de2e8c2fd49 >>> >>>> (route2) http://0.0.0.0:8282 --> http://0.0.0.0:8282 <<< >>>>>> Pattern:InOut, >>>>>> >>>>> Headers:{CamelHttpCharacterEncoding=null, Connection=keep-alive, >>> User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) >>> Gecko/20091102 Firefox/3.5.5, Host=localhost:8181, >>> Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>> CamelHttpPath=/reportservice/incidents/123/, CamelHttpMethod=GET, >>> Keep-Alive=300, CamelHttpUri=/reportservice/incidents/123/, >>> Accept-Language=en-us,en;q=0.5, CamelHttpUrl= >>> http://localhost:8181/reportservice/incidents/123/, >>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Content-Type=null, >>> Accept-Encoding=gzip,deflate, CamelHttpQuery=null}, BodyType:null, >>> Body:null >>> 09:53:15,531 | INFO | 7786908@qtp2-1 | AuthChallengeProcessor >>> | >>> ient.auth.AuthChallengeProcessor 101 | ntlm authentication scheme >>> selected >>> 09:53:15,531 | INFO | 7786908@qtp2-1 | HttpMethodDirector >>> | >>> ns.httpclient.HttpMethodDirector 796 | No credentials available for NTLM >>> @172.17.5.6:80 >>> >>> >>> and the route >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >> method="getReports"/> >>> >>> >>> It seems that the http endpoint uses internal proxy setup !!!!! >>> >>> 09:53:15,531 | INFO | 7786908@qtp2-1 | AuthChallengeProcessor >>> | >>> ient.auth.AuthChallengeProcessor 101 | ntlm authentication scheme >>> selected >>> 09:53:15,531 | INFO | 7786908@qtp2-1 | HttpMethodDirector >>> | >>> ns.httpclient.HttpMethodDirector 796 | No credentials available for NTLM >>> @172.17.5.6:80 >>> >>> >>> Charles Moulliard >>> Senior Enterprise Architect >>> Apache Camel Committer >>> >>> ***************************** >>> blog : http://cmoulliard.blogspot.com >>> twitter : http://twitter.com/cmoulliard >>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard >>> >>> Apache Camel Group : >>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm >>> >>> >>> On Mon, Dec 14, 2009 at 9:46 AM, Willem Jiang >> >wrote: >>> >>> Can you add this option into your http producer's URI? >>>> >>>> bridgeEndpoint=true >>>> With this option set to be true, HttpProducer will ignore the >>>> Exchange.HTTP_URI header, and use the endpoint's URI for request. >>>> So you will not get host parameter is null error. >>>> >>>> >>>> Willem >>>> >>>> >>>> Charles Moulliard wrote: >>>> >>>> I have also try what you propose but I receive this error : >>>>> >>>>> java.lang.IllegalArgumentException: host parameter is null >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.HttpConnection.(HttpConnection.java:206) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.HttpConnection.(HttpConnection.java:155) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionWithReference.(MultiThreadedHttpConnectionManager.java:1145) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$ConnectionPool.createConnection(MultiThreadedHttpConnectionManager.java:762) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.doGetConnection(MultiThreadedHttpConnectionManager.java:476) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager.getConnectionWithTimeout(MultiThreadedHttpConnectionManager.java:416) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:153) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) >>>>> at >>>>> >>>>> >>>>> org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.component.http.HttpProducer.executeMethod(HttpProducer.java:164) >>>>> at >>>>> >>>>> org.apache.camel.component.http.HttpProducer.process(HttpProducer.java:78) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) >>>>> at >>>>> >>>>> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) >>>>> at >>>>> >>>>> org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) >>>>> at >>>>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) >>>>> 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:162) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >>>>> at >>>>> >>>>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:41) >>>>> 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:162) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >>>>> at >>>>> >>>>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206) >>>>> at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) >>>>> at >>>>> >>>>> >>>>> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54) >>>>> 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:53) >>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) >>>>> at >>>>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) >>>>> at >>>>> >>>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:363) >>>>> at >>>>> >>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) >>>>> at >>>>> >>>>> >>>>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) >>>>> at >>>>> >>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) >>>>> at org.mortbay.jetty.Server.handle(Server.java:324) >>>>> at >>>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534) >>>>> at >>>>> >>>>> >>>>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:864) >>>>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:533) >>>>> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:207) >>>>> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) >>>>> at >>>>> >>>>> >>>>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) >>>>> at >>>>> >>>>> >>>>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522) >>>>> >>>>> >>>>> Log >>>>> >>>>> 15:50:52,200 | INFO | 4454359@qtp16-0 | Tracer >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> b645e724-c4f9-4c38-afcd-c607566c9ec0 >>>>> >>>>> (route12) from(http://localhost:8181) --> setExchangePattern: InOut >>>>>> <<< >>>>>> >>>>>>> Pattern:InOut, >>>>>>> >>>>>> >>>>> Headers:{Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>>>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Keep-Alive=300, >>>>> Accept-Language=en-us,en;q=0.5, CamelHttpPath=/reportservice/incidents, >>>>> Host=localhost:8181, CamelHttpUrl= >>>>> http://localhost:8181/reportservice/incidents, >>>>> Accept-Encoding=gzip,deflate, >>>>> CamelHttpUri=/reportservice/incidents, Content-Type=null, >>>>> CamelHttpQuery=null, CamelHttpMethod=GET, Connection=keep-alive, >>>>> User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) >>>>> Gecko/20091102 Firefox/3.5.5, CamelHttpCharacterEncoding=null}, >>>>> BodyType:null, Body:null >>>>> 15:50:52,231 | INFO | 4454359@qtp16-0 | Tracer >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> b645e724-c4f9-4c38-afcd-c607566c9ec0 >>>>> >>>>> (route12) setExchangePattern: InOut --> http://localhost:8282/ <<< >>>>>> >>>>>>> Pattern:InOut, Headers:{Keep-Alive=300, >>>>>>> >>>>>> CamelHttpPath=/reportservice/incidents, >>>>> Accept-Language=en-us,en;q=0.5, >>>>> Connection=keep-alive, CamelHttpQuery=null, >>>>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Content-Type=null, >>>>> CamelHttpCharacterEncoding=null, CamelHttpUrl= >>>>> http://localhost:8181/reportservice/incidents, User-Agent=Mozilla/5.0 >>>>> (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 >>>>> Firefox/3.5.5, CamelHttpMethod=GET, >>>>> CamelHttpUri=/reportservice/incidents, >>>>> Accept-Encoding=gzip,deflate, >>>>> Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>>>> Host=localhost:8181}, BodyType:null, Body:null >>>>> 15:50:52,262 | INFO | 4454359@qtp16-0 | Tracer >>>>> | >>>>> rg.apache.camel.processor.Logger 88 | >>>>> b645e724-c4f9-4c38-afcd-c607566c9ec0 >>>>> >>>>> (route12) http://localhost:8282/ --> http://localhost:8282/ <<< >>>>>> >>>>>>> Pattern:InOut, Headers:{Keep-Alive=300, >>>>>>> >>>>>> CamelHttpPath=/reportservice/incidents, >>>>> Accept-Language=en-us,en;q=0.5, >>>>> Connection=keep-alive, CamelHttpQuery=null, >>>>> Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7, Content-Type=null, >>>>> CamelHttpCharacterEncoding=null, CamelHttpUrl= >>>>> http://localhost:8181/reportservice/incidents, User-Agent=Mozilla/5.0 >>>>> (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 >>>>> Firefox/3.5.5, CamelHttpMethod=GET, >>>>> CamelHttpUri=/reportservice/incidents, >>>>> Accept-Encoding=gzip,deflate, >>>>> Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, >>>>> Host=localhost:8181}, BodyType:null, Body:null >>>>> >>>>> Config >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> method="getReports"/> >>>>> >>>>> >>>>> Charles Moulliard >>>>> Senior Enterprise Architect >>>>> Apache Camel Committer >>>>> >>>>> ***************************** >>>>> blog : http://cmoulliard.blogspot.com >>>>> twitter : http://twitter.com/cmoulliard >>>>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard >>>>> >>>>> Apache Camel Group : >>>>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm >>>>> >>>>> >>>>> On Fri, Dec 11, 2009 at 3:47 PM, Adrian Trenaman < >>>>> TRENAMAN@progress.com >>>>> >>>>>> wrote: >>>>>> >>>>> In the second route, you should use jetty: in the uri! When you want >>>>> to >>>>> >>>>>> listen for http traffic you should always use jetty:. >>>>>> >>>>>> Cheers, >>>>>> Ade >>>>>> >>>>>> ----- Original Message ----- >>>>>> From: Charles Moulliard >>>>>> To: users@camel.apache.org >>>>>> Sent: Fri Dec 11 09:43:32 2009 >>>>>> Subject: Re: camel-jetty and loadbalancing >>>>>> >>>>>> We progress. >>>>>> >>>>>> With the following config, the HTTP request ( >>>>>> http://localhost:8181/reportservice/incidents/) is able to reach the >>>>>> server >>>>>> 8282 but it fails to answer and generate error >>>>>> >>>>>> java.lang.IllegalArgumentException: host parameter is null >>>>>> at >>>>>> >>>>>> >>>>>> >>>>>> org.apache.commons.httpclient.HttpConnection.(HttpConnection.java:206) >>>>>> at >>>>>> >>>>>> >>>>>> >>>>>> org.apache.commons.httpclient.HttpConnection.(HttpConnection.java:155) >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> The doc mentions that a http endpoint cannot used as a consumer (= >>>>>> from) >>>>>> but >>>>>> as a producer (=to) >>>>>> >>>>>> Regards, >>>>>> >>>>>> Charles Moulliard >>>>>> Senior Enterprise Architect >>>>>> Apache Camel Committer >>>>>> >>>>>> ***************************** >>>>>> blog : http://cmoulliard.blogspot.com >>>>>> twitter : http://twitter.com/cmoulliard >>>>>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard >>>>>> >>>>>> Apache Camel Group : >>>>>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm >>>>>> >>>>>> >>>>>> On Fri, Dec 11, 2009 at 3:25 PM, Adrian Trenaman < >>>>>> TRENAMAN@progress.com >>>>>> >>>>>> wrote: >>>>>>> You should use camel-http instead of -jetty for your http producer >>>>>>> endpoints! I.e. Start your uri for the producers with http:// rather >>>>>>> >>>>>>> than >>>>>> >>>>>> jetty:http:// >>>>>>> >>>>>>> HTH, >>>>>>> Ade >>>>>>> >>>>>>> ----- Original Message ----- >>>>>>> From: Charles Moulliard >>>>>>> To: users@camel.apache.org >>>>>>> Sent: Fri Dec 11 09:13:35 2009 >>>>>>> Subject: camel-jetty and loadbalancing >>>>>>> >>>>>>> I try to use loadbalancing with camel-jetty but I'm not quite sure >>>>>>> that >>>>>>> what >>>>>>> I do is correct. >>>>>>> >>>>>>> Is this configuration correct ? >>>>>>> >>>>>>> >>>>>>> >>>>>> uri="jetty:http://localhost:8080< >>>>>>> http://localhost:8080?matchOnUriPrefix=true> >>>>>>> "/> >>>>>>> >>>>>>> >>>>>>> >>>>>> uri="jetty:http://localhost:8282< >>>>>>> http://localhost:8282?matchOnUriPrefix=true> >>>>>>> "/> >>>>>>> >>>>>> uri="jetty:http://localhost:8383< >>>>>>> http://localhost:8383?matchOnUriPrefix=true> >>>>>>> "/> >>>>>>> >>>>>> uri="jetty:http://localhost:8484< >>>>>>> http://localhost:8484?matchOnUriPrefix=true> >>>>>>> "/> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> Regards, >>>>>>> >>>>>>> Charles Moulliard >>>>>>> Senior Enterprise Architect >>>>>>> Apache Camel Committer >>>>>>> >>>>>>> ***************************** >>>>>>> blog : http://cmoulliard.blogspot.com >>>>>>> twitter : http://twitter.com/cmoulliard >>>>>>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard >>>>>>> >>>>>>> Apache Camel Group : >>>>>>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm >>>>>>> >>>>>>> >>>>>>> >>> >> > --00504502d5678d8b2f047aad7f89--