Exception stack trace shows cause as - java.io.NotSerializableException: org.apache.camel.util.CaseInsensitiveMap$1
tide08 wrote: > > I have soak test with following route and it seems to fail with following > error. I am using camel 2.1-SNAPSHOT. > > I am not sure why that happens - > > <route> > <from uri="dataset:messageDataSet?produceDelay=10"/> > <to uri="proxySender" /> > </route> > <route> > <from uri="activemq:testQueue"/> > <to uri="dataset:messageDataSet?produceDelay=10"/> > </route> > > ProxySender instead is just a custom processor which uses camelTemplate > and camel-jms to send message to "activemq:testQueue" on a standalone > broker. > > I tried using the proxySender without using DataSet and it seems to work > just fine. But when used with DataSet it seems to fail while storing > message (ActiveMQObjectMessage.storeContent() ) - DataSet header > {CamelDataSetIndex=0}. CaseInsensitiveMap fails to serialize? > > Any ideas on what may be wrong? > > Thread Stack: > > Daemon Thread [Camel thread 0: DataSetComponent] (Suspended) > ActiveMQObjectMessage.storeContent() line: 104 > ActiveMQObjectMessage.setObject(Serializable) line: 155 > ActiveMQSession.createObjectMessage(Serializable) line: 325 > PooledSession.createObjectMessage(Serializable) line: 149 > JmsBinding.createJmsMessage(Exchange, Object, Map<String,Object>, > Session, CamelContext) line: 489 > JmsBinding.makeJmsMessage(Exchange, Message, Session, Exception) line: > 277 > JmsProducer$2.createMessage(Session) line: 316 > JmsConfiguration$CamelJmsTemplate.doSendToDestination(Destination, > MessageCreator, JmsConfiguration$MessageSentCallback, Session) line: 221 > > JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration$CamelJmsTemplate, > Destination, MessageCreator, JmsConfiguration$MessageSentCallback, > Session) line: 164 > JmsConfiguration$CamelJmsTemplate$3.doInJms(Session) line: 198 > JmsConfiguration$CamelJmsTemplate(JmsTemplate).execute(SessionCallback, > boolean) line: 471 > JmsConfiguration$CamelJmsTemplate.send(String, MessageCreator) line: > 195 > JmsProducer.doSend(boolean, String, Destination, MessageCreator, > DeferredRequestReplyMap$DeferredMessageSentCallback) line: 375 > JmsProducer.processInOnly(Exchange) line: 320 > JmsProducer.process(Exchange) line: 150 > ProducerCache$1.doInProducer(Producer, Exchange, ExchangePattern) line: > 179 > ProducerCache$1.doInProducer(Producer, Exchange, ExchangePattern) line: > 161 > ProducerCache.doInProducer(Endpoint, Exchange, ExchangePattern, > ProducerCallback<T>) line: 146 > ProducerCache.sendExchange(Endpoint, ExchangePattern, Processor, > Exchange) line: 160 > ProducerCache.send(Endpoint, Processor) line: 98 > DefaultProducerTemplate.send(Endpoint, Processor) line: 97 > DefaultProducerTemplate.sendBodyAndHeaders(Endpoint, Object, > Map<String,Object>) line: 206 > DefaultProducerTemplate.sendBodyAndHeaders(String, Object, > Map<String,Object>) line: 202 > JmsMessageServiceImpl.send(Message...) line: 60 > ProxySendProcessor.process(Exchange) line: 17 > ProcessorEndpoint.onExchange(Exchange) line: 95 > ProcessorEndpoint$1.process(Exchange) line: 65 > SendProcessor$1.doInProducer(Producer, Exchange, ExchangePattern) line: > 97 > SendProcessor$1.doInProducer(Producer, Exchange, ExchangePattern) line: > 95 > ProducerCache.doInProducer(Endpoint, Exchange, ExchangePattern, > ProducerCallback<T>) line: 146 > SendProcessor.doProcess(Exchange) line: 94 > SendProcessor.process(Exchange) line: 82 > InstrumentationProcessor.process(Exchange) line: 67 > TraceInterceptor(DelegateProcessor).processNext(Exchange) line: 53 > TraceInterceptor(DelegateProcessor).proceed(Exchange) line: 82 > TraceInterceptor.process(Exchange) line: 93 > InstrumentationProcessor.process(Exchange) line: 67 > DefaultErrorHandler(RedeliveryErrorHandler).processExchange(Exchange) > line: 223 > > DefaultErrorHandler(RedeliveryErrorHandler).processErrorHandler(Exchange, > RedeliveryErrorHandler$RedeliveryData) line: 153 > DefaultErrorHandler(RedeliveryErrorHandler).process(Exchange) line: 91 > DefaultErrorHandler.process(Exchange) line: 49 > DefaultChannel.process(Exchange) line: 206 > UnitOfWorkProcessor.processNext(Exchange) line: 54 > UnitOfWorkProcessor(DelegateProcessor).process(Exchange) line: 48 > InstrumentationProcessor.process(Exchange) line: 67 > DataSetConsumer.sendMessages(long, long) line: 70 > DataSetConsumer$1.run() line: 61 > Executors$RunnableAdapter<T>.call() line: 441 > FutureTask$Sync.innerRun() line: 303 > ScheduledThreadPoolExecutor$ScheduledFutureTask<V>(FutureTask<V>).run() > line: 138 > > ScheduledThreadPoolExecutor$ScheduledFutureTask<V>.access$301(ScheduledThreadPoolExecutor$ScheduledFutureTask) > line: 98 > ScheduledThreadPoolExecutor$ScheduledFutureTask<V>.run() line: 207 > ThreadPoolExecutor$Worker.runTask(Runnable) line: 886 > ThreadPoolExecutor$Worker.run() line: 908 > Thread.run() line: 637 > > > Error StackTrace: > > [java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156), > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326), > java.util.HashSet.writeObject(HashSet.java:267), > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39), > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25), > java.lang.reflect.Method.invoke(Method.java:597), > java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945), > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461), > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392), > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150), > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509), > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474), > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392), > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150), > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509), > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474), > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392), > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150), > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326), > org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:98), > org.apache.activemq.command.ActiveMQObjectMessage.setObject(ActiveMQObjectMessage.java:155), > org.apache.activemq.ActiveMQSession.createObjectMessage(ActiveMQSession.java:325), > org.apache.activemq.pool.PooledSession.createObjectMessage(PooledSession.java:149), > org.apache.camel.component.jms.JmsBinding.createJmsMessage(JmsBinding.java:489), > org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:277), > org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:316), > org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:221), > org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:164), > org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:198), > org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471), > org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:195), > org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:375), > org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:320), > org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:150), > org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:179), > org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:161), > org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146), > org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:160), > org.apache.camel.impl.ProducerCache.send(ProducerCache.java:98), > org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:97), > org.apache.camel.impl.DefaultProducerTemplate.sendBodyAndHeaders(DefaultProducerTemplate.java:206), > org.apache.camel.impl.DefaultProducerTemplate.sendBodyAndHeaders(DefaultProducerTemplate.java:202), > com.citrix.message.service.jms.JmsMessageServiceImpl.send(JmsMessageServiceImpl.java:60), > com.citrix.message.ProxySendProcessor.process(ProxySendProcessor.java:17), > org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:95), > org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:65), > org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97), > org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95), > org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146), > org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94), > org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82), > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67), > org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53), > org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82), > org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93), > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67), > org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:223), > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:153), > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:91), > org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49), > org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:206), > org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54), > org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48), > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67), > org.apache.camel.component.dataset.DataSetConsumer.sendMessages(DataSetConsumer.java:70), > org.apache.camel.component.dataset.DataSetConsumer$1.run(DataSetConsumer.java:61), > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441), > java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303), > java.util.concurrent.FutureTask.run(FutureTask.java:138), > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98), > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207), > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886), > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908), > java.lang.Thread.run(Thread.java:637)] > -- View this message in context: http://old.nabble.com/DataSet-header-%7BCamelDataSetIndex%3D0%7D-causes-failure-tp26487985p26488048.html Sent from the Camel - Users mailing list archive at Nabble.com.