Return-Path: Delivered-To: apmail-camel-users-archive@www.apache.org Received: (qmail 4726 invoked from network); 15 Aug 2010 07:08:15 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 15 Aug 2010 07:08:15 -0000 Received: (qmail 88207 invoked by uid 500); 15 Aug 2010 07:08:15 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 87913 invoked by uid 500); 15 Aug 2010 07:08:12 -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 87905 invoked by uid 99); 15 Aug 2010 07:08:11 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 15 Aug 2010 07:08:11 +0000 X-ASF-Spam-Status: No, hits=1.3 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL,URI_HEX X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of claus.ibsen@gmail.com designates 209.85.216.45 as permitted sender) Received: from [209.85.216.45] (HELO mail-qw0-f45.google.com) (209.85.216.45) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 15 Aug 2010 07:08:05 +0000 Received: by qwh5 with SMTP id 5so3879993qwh.32 for ; Sun, 15 Aug 2010 00:07:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=Ejnyxza2vRIt3Bm1bpM3GRrOB3JH007GxS1IOtft2IQ=; b=r3t+e0X530Pizr25sy9rs4P3S89s9iBFkuHV7ZjdlEWhcc21ptrjlxZqpVlZQhNgyU 0GFL22e4wQAnr9Bl0kvAuiLWPpoqTAcKcaFClIM2PBSdDk3hBjWben7gaW9s9PcGzOcE NrBBJXYhCuu3jiuKXBnfUxTVp27Er+xLAJiEo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=i7O1diGO87nFgRFxTJdDnqDL0lNxbczTlNgRSoTpIS9H9mvY8ZHvkS7hf9Wsisnean 9LIcR5gbFlk3fI1kMIpE9asYAWr1u0L4rB6g73Z1Sj2+ndBp+niqDFHPGoIrXPSszZzc 2SOqkchOXNdp+tqU1XUq0la7A8xPHtbiqV2Ls= Received: by 10.229.51.213 with SMTP id e21mr126334qcg.225.1281856064236; Sun, 15 Aug 2010 00:07:44 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.1.200 with HTTP; Sun, 15 Aug 2010 00:07:23 -0700 (PDT) In-Reply-To: <1281809594679-2635377.post@n5.nabble.com> References: <1281809594679-2635377.post@n5.nabble.com> From: Claus Ibsen Date: Sun, 15 Aug 2010 09:07:23 +0200 Message-ID: Subject: Re: LoggingErrorHandler doesn't take effect when producer creation failed To: users@camel.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Hi The Camel error handler is for message when they fails. The mina component will fail on startup if it can't get a connection to that remote site. You can set lazySessionCreation=3Dtrue to let it only connect on demand. Then it will fail when a message is being send to it, and the logging error handler should take action. On Sat, Aug 14, 2010 at 8:13 PM, yedingding wrote: > > Hey. > > I'm using java 1.6, camel 2.4 and activemq 5.3.2. I meet a problem with > loggingErrorHandler. I thought it will handler all the exceptions but now= it > fails when I tried to start the context and then it quit. > > The codes are: > > =A0 context.addRoutes(new RouteBuilder() { > =A0 =A0 =A0public void configure() { > =A0 =A0 =A0 =A0errorHandler(loggingErrorHandler("IM Queue")); > > =A0 =A0 =A0 =A0from("active-mq:queue:im_queue") > =A0 =A0 =A0 =A0 =A0 =A0.process(new Processor() { > =A0 =A0 =A0 =A0 =A0 =A0 =A0public void process(Exchange exchange) throws = Exception { > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0System.out.println("RECV: " > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0+ exchange.getIn().get= Body(String.class)); > =A0 =A0 =A0 =A0 =A0 =A0 =A0} > > }).to("mina://tcp://127.0.0.1:5679?lazySessionCreation=3Dfalse&sync=3Dfal= se&textline=3Dtrue"); > =A0 =A0 =A0} > =A0 =A0}); > > So when 5679 port is not open, it raises the exception below and then > terminated. > > Exception in thread "main" org.apache.camel.FailedToCreateProducerExcepti= on: > Failed to create Producer for endpoint: > Endpoint[mina://tcp://127.0.0.1:5679?lazySessionCreation=3Dfalse&sync=3Df= alse&textline=3Dtrue]. > Reason: org.apache.mina.common.RuntimeIOException: Failed to get the > session. > =A0 =A0 =A0 =A0at > org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:362) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.ProducerCache.acquireProducer(ProducerCache.java:93= ) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.ProducerCache.startProducer(ProducerCache.java:124) > =A0 =A0 =A0 =A0at org.apache.camel.processor.SendProcessor.doStart(SendPr= ocessor.java:144) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.interceptor.TraceInterceptor.doStart(TraceInte= rceptor.java:423) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DefaultChannel.doStart(DefaultChannel.java:143= ) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at org.apache.camel.processor.TryProcessor.doStart(TryProc= essor.java:172) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.interceptor.TraceInterceptor.doStart(TraceInte= rceptor.java:423) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DefaultChannel.doStart(DefaultChannel.java:143= ) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:78) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.= java:571) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startServices(Servi= ceHelper.java:64) > =A0 =A0 =A0 =A0at > org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncPr= ocessor.java:77) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.RouteService.startChildService(RouteService.java:22= 1) > =A0 =A0 =A0 =A0at org.apache.camel.impl.RouteService.doStart(RouteService= .java:150) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelCont= ext.java:1328) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(Defaul= tCamelContext.java:1256) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:= 952) > Caused by: org.apache.mina.common.RuntimeIOException: Failed to get the > session. > =A0 =A0 =A0 =A0at > org.apache.mina.common.support.DefaultConnectFuture.getSession(DefaultCon= nectFuture.java:63) > =A0 =A0 =A0 =A0at > org.apache.camel.component.mina.MinaProducer.openConnection(MinaProducer.= java:207) > =A0 =A0 =A0 =A0at > org.apache.camel.component.mina.MinaProducer.doStart(MinaProducer.java:16= 8) > =A0 =A0 =A0 =A0at org.apache.camel.impl.ServiceSupport.start(ServiceSuppo= rt.java:56) > =A0 =A0 =A0 =A0at org.apache.camel.util.ServiceHelper.startService(Servic= eHelper.java:53) > =A0 =A0 =A0 =A0at > org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:360) > =A0 =A0 =A0 =A0... 62 more > Caused by: java.net.ConnectException: Connection refused > =A0 =A0 =A0 =A0at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method= ) > =A0 =A0 =A0 =A0at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChanne= lImpl.java:574) > =A0 =A0 =A0 =A0at > org.apache.mina.transport.socket.nio.SocketConnector.processSessions(Sock= etConnector.java:293) > =A0 =A0 =A0 =A0at > org.apache.mina.transport.socket.nio.SocketConnector.access$800(SocketCon= nector.java:53) > =A0 =A0 =A0 =A0at > org.apache.mina.transport.socket.nio.SocketConnector$Worker.run(SocketCon= nector.java:383) > =A0 =A0 =A0 =A0at > org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.ja= va:51) > =A0 =A0 =A0 =A0at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor= .java:886) > =A0 =A0 =A0 =A0at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.jav= a:908) > =A0 =A0 =A0 =A0at java.lang.Thread.run(Thread.java:637) > > > Thanks for the help. > -- > View this message in context: http://camel.465427.n5.nabble.com/LoggingEr= rorHandler-doesn-t-take-effect-when-producer-creation-failed-tp2635377p2635= 377.html > Sent from the Camel - Users mailing list archive at Nabble.com. > --=20 Claus Ibsen Apache Camel Committer Author of Camel in Action: http://www.manning.com/ibsen/ Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus