Return-Path: X-Original-To: apmail-camel-issues-archive@minotaur.apache.org Delivered-To: apmail-camel-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4AFD5F8FB for ; Thu, 21 Mar 2013 11:19:18 +0000 (UTC) Received: (qmail 54199 invoked by uid 500); 21 Mar 2013 11:19:17 -0000 Delivered-To: apmail-camel-issues-archive@camel.apache.org Received: (qmail 53890 invoked by uid 500); 21 Mar 2013 11:19:16 -0000 Mailing-List: contact issues-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@camel.apache.org Delivered-To: mailing list issues@camel.apache.org Received: (qmail 53658 invoked by uid 99); 21 Mar 2013 11:19:15 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 21 Mar 2013 11:19:15 +0000 Date: Thu, 21 Mar 2013 11:19:15 +0000 (UTC) From: "Sven Smets (JIRA)" To: issues@camel.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CAMEL-6154) NPE when using the imap mail component with quartz or the timer and pollEnrich MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CAMEL-6154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13608839#comment-13608839 ] Sven Smets commented on CAMEL-6154: ----------------------------------- It don't work, I have added the error log. As a workarround i use the CronScheduledRoutePolicy with a start and stop time and this works as expected (see the code below) from(the mail uri) .noAutoStartup() .routePolicy(routePolicy) .bean(MailAttachmentsHandler.class); the MailAttachmentsHandler: public void process(Exchange exchange) throws Exception { CamelContext context = exchange.getContext(); ProducerTemplate producer = context.createProducerTemplate(); for (String name : exchange.getIn().getAttachmentNames()) { if (name.matches(regex)) { DataHandler attachment = exchange.getIn().getAttachment(name); byte[] data = context.getTypeConverter().convertTo(byte[].class, attachment.getInputStream()); Map headers = new HashMap(); // used to write to file headers.put(Exchange.FILE_NAME, name); producer.sendBodyAndHeaders(queueEndpointUri, data, headers); } } producer.stop(); } > NPE when using the imap mail component with quartz or the timer and pollEnrich > ------------------------------------------------------------------------------ > > Key: CAMEL-6154 > URL: https://issues.apache.org/jira/browse/CAMEL-6154 > Project: Camel > Issue Type: Bug > Components: camel-mail, camel-quartz > Affects Versions: 2.10.3, 2.10.4 > Environment: Windows, Tomcat 7.0.32, java 7, Spring 3.1.4 > Reporter: Sven Smets > Assignee: Claus Ibsen > Labels: imap, pollenrich, quartz, timer > Fix For: 2.10.5, 2.11.0 > > Attachments: error log.txt > > > There is a NPE when using the imap mail component with quartz or the timer and pollEnrich as dicussed here: > http://camel.465427.n5.nabble.com/Schedule-file-mail-endpoint-td3356666.html#a3357538 > I reproduced it on version 2.10.3 and 2.10.4 with > > > > > > We need to use it with the quartz component (so we can use a cron expression), but get the same error > > > > > > 11/03/2013 10:32:04 [DefaultQuartzScheduler-context_Worker-1] ERROR org.apache.camel.processor.DefaultErrorHandler - Failed delivery for (MessageId: ID-W7-009430-52415-1362994261595-0-3 on ExchangeId: ID-W7-009430-52415-1362994261595-0-2). Exhausted after delivery attempt: 1 caught: org.apache.camel.CamelExchangeException: Error occurred during aggregation. Exchange[Message: [Body is null]]. Caused by: [org.apache.camel.RuntimeCamelException - Failed to extract body due to: null. Exchange: Exchange[MailMessage: com.sun.mail.imap.IMAPMessage@411a3fe4]. Message: com.sun.mail.imap.IMAPMessage@411a3fe4] > org.apache.camel.CamelExchangeException: Error occurred during aggregation. Exchange[Message: [Body is null]]. Caused by: [org.apache.camel.RuntimeCamelException - Failed to extract body due to: null. Exchange: Exchange[MailMessage: com.sun.mail.imap.IMAPMessage@411a3fe4]. Message: com.sun.mail.imap.IMAPMessage@411a3fe4] > at org.apache.camel.processor.PollEnricher.process(PollEnricher.java:194)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:334)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:308)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:44)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:71)[camel-core-2.10.4.jar:2.10.4] > at org.apache.camel.component.quartz.QuartzEndpoint.onJobExecute(QuartzEndpoint.java:113)[camel-quartz-2.10.4.jar:2.10.4] > at org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:61)[camel-quartz-2.10.4.jar:2.10.4] > at org.quartz.core.JobRunShell.run(JobRunShell.java:216)[quartz-1.8.5.jar:] > at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)[quartz-1.8.5.jar:] -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira