Hello,

I'm trying to route an exchange from a File to ActiveMQ but get en
error because the JMS component can't marshal a GenericFile. I'm using
Camel 2.11.0 on Karaf 2.3.1, openjdk-7, Debian 7.
If I leave out "transferExchange=true" all works well, except I need
to access the exchange properties so I have to marshal the whole
exchange, not just the message.

Any ideas?

My route:

        <route id="fetch-local-data-csv">
            <from
uri="file://{{ftp.root_dir}}?recursive=true&amp;antInclude=R*/in/*.csv"/>
            <to uri="activemq:incoming.csv?transferExchange=true"/>
        </route>

The error:

2013-06-14 13:43:43,984 | ERROR | doc-process/vftp |
DefaultErrorHandler              | rg.apache.camel.util.CamelLogger
215 | 140 - org.apache.camel.camel-core - 2.11.0 | Failed delivery for
(MessageId: ID-daos-50151-1371203767631-1-75 on ExchangeId:
ID-daos-50151-1371203767631-1-76). Exhausted after delivery attempt: 1
caught: org.apache.camel.RuntimeExchangeException: Message body of
type org.apache.camel.component.file.GenericFile is not supported by
this marshaller. on the exchange:
Exchange[RO3892273/in/249257_RO3892273.csv]
org.apache.camel.RuntimeExchangeException: Message body of type
org.apache.camel.component.file.GenericFile is not supported by this
marshaller. on the exchange:
Exchange[RO3892273/in/249257_RO3892273.csv]
at 
org.apache.camel.impl.DefaultExchangeHolder.marshal(DefaultExchangeHolder.java:93)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.impl.DefaultExchangeHolder.marshal(DefaultExchangeHolder.java:77)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.component.jms.JmsBinding.createJmsMessage(JmsBinding.java:439)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:287)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:270)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:217)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:160)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$1.doInJms(JmsConfiguration.java:174)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:466)[163:org.springframework.jms:3.1.4.RELEASE]
at 
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:171)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:402)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:356)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:132)[164:org.apache.camel.camel-jms:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:122)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:298)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:117)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:390)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.Pipeline.process(Pipeline.java:117)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.Pipeline.process(Pipeline.java:80)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:350)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:197)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:163)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:141)[140:org.apache.camel.camel-core:2.11.0]
at 
org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:91)[140:org.apache.camel.camel-core:2.11.0]
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)[:1.7.0_03]
at 
java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)[:1.7.0_03]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)[:1.7.0_03]
at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)[:1.7.0_03]
at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.7.0_03]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_03]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_03]
at java.lang.Thread.run(Thread.java:722)[:1.7.0_03]
2013-06-14 13:43:43,985 | WARN  | doc-process/vftp |
GenericFileOnCompletion          | ent.file.GenericFileOnCompletion
161 | 140 - org.apache.camel.camel-core - 2.11.0 | Rollback file
strategy: 
org.apache.camel.component.file.strategy.GenericFileRenameProcessStrategy@37c0f472
for file: 
GenericFile[/home/ieugen/contracte/doc-process/vftp/RO3892273/in/249257_RO3892273.csv]

--
Ioan Eugen Stan
0720 898 747

Reply via email to