[
https://issues.apache.org/activemq/browse/SM-1826?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ivan updated SM-1826:
---------------------
Attachment: stacktrace.txt
Issue stack trace
> StreamCacheConverter troubles
> -----------------------------
>
> Key: SM-1826
> URL: https://issues.apache.org/activemq/browse/SM-1826
> Project: ServiceMix
> Issue Type: Bug
> Affects Versions: 3.3
> Environment: Windows XP SP2, Apache ServiceMix 3.2.2, Apache Camel
> 1.6.0
> Reporter: Ivan
> Attachments: stacktrace.txt
>
>
> I've got polling consumer SU(based on proper maven archetype), that sends
> files, marshaled in primitive way(converted to StringSource) to myFileHandler.
> <file:poller service="myServices:myFilePoller"
> endpoint="endpoint"
> targetService="myServices:myFileHandler"
> targetEndpoint="endpoint"
> file="file:///D:/temp/camel/poller"
> autoCreateDirectory="true">
> Also I've got camel SU with route:
> public void configure() {
> noStreamCaching();
>
> from("jbi:endpoint:http://my.test.com/myServices/myFileHandler/endpoint")
> .to("activemq:queue:processingQueue");
>
> from("activemq:queue:processingQueue")
> .to("log:ok");
> }
> Throws exception:
> WARN - EndpointMessageListener -
> Endpoint[activemq:queue:processingQueue] consumer caught an exception while
> process
> ing JMS message: ActiveMQObjectMessage {commandId = 5, responseRequired =
> true, messageId = ID:EPUAKYIW0502-3607-12373002117
> 18-4:51:1:1:1, originalDestination = null, originalTransactionId = null,
> producerId = ID:EPUAKYIW0502-3607-1237300211718-4:5
> 1:1:1, destination = queue://processingQueue, transactionId = null,
> expiration = 0, timestamp = 1237301839833, arrival = 0,
> brokerInTime = 1237301839833, brokerOutTime = 1237301839833, correlationId =
> null, replyTo = null, persistent = true, type =
> null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId =
> null, compressed = false, userID = null, content
> = org.apache.activemq.util.byteseque...@e2a846, marshalledProperties = null,
> dataStructure = null, redeliveryCounter = 0, si
> ze = 0, properties = null, readOnlyProperties = true, readOnlyBody = true,
> droppable = false}
> org.apache.camel.RuntimeCamelException:
> org.apache.camel.component.jms.RuntimeJmsException: Failed to extract body
> due to: j
> avax.jms.JMSException: Failed to build body from bytes. Reason:
> java.io.InvalidClassException: org.apache.camel.converter.st
> ream.StreamCacheConverter$SourceCache;
> org.apache.camel.converter.stream.StreamCacheConverter$SourceCache; no valid
> construc
> tor. Message: ActiveMQObjectMessage {commandId = 5, responseRequired = true,
> messageId = ID:EPUAKYIW0502-3607-1237300211718-
> 4:51:1:1:1, originalDestination = null, originalTransactionId = null,
> producerId = ID:EPUAKYIW0502-3607-1237300211718-4:51:1
> :1, destination = queue://processingQueue, transactionId = null, expiration =
> 0, timestamp = 1237301839833, arrival = 0, bro
> kerInTime = 1237301839833, brokerOutTime = 1237301839833, correlationId =
> null, replyTo = null, persistent = true, type = nu
> ll, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content = o
> rg.apache.activemq.util.byteseque...@e2a846, marshalledProperties = null,
> dataStructure = null, redeliveryCounter = 0, size
> = 0, properties = null, readOnlyProperties = true, readOnlyBody = true,
> droppable = false}
> at
> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:842)
> at
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:95)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContain
> er.java:543)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer
> .java:482)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContai
> ner.java:451)
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessa
> geListenerContainer.java:323)
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessage
> ListenerContainer.java:261)
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(Defau
> ltMessageListenerContainer.java:982)
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageLi
> stenerContainer.java:881)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.camel.component.jms.RuntimeJmsException: Failed to
> extract body due to: javax.jms.JMSException: Failed
> to build body from bytes. Reason: java.io.InvalidClassException:
> org.apache.camel.converter.stream.StreamCacheConverter$Sou
> rceCache; org.apache.camel.converter.stream.StreamCacheConverter$SourceCache;
> no valid constructor. Message: ActiveMQObjectM
> essage {commandId = 5, responseRequired = true, messageId =
> ID:EPUAKYIW0502-3607-1237300211718-4:51:1:1:1, originalDestinati
> on = null, originalTransactionId = null, producerId =
> ID:EPUAKYIW0502-3607-1237300211718-4:51:1:1, destination = queue://pro
> cessingQueue, transactionId = null, expiration = 0, timestamp =
> 1237301839833, arrival = 0, brokerInTime = 1237301839833, br
> okerOutTime = 1237301839833, correlationId = null, replyTo = null, persistent
> = true, type = null, priority = 4, groupID = n
> ull, groupSequence = 0, targetConsumerId = null, compressed = false, userID =
> null, content = org.apache.activemq.util.ByteS
> eque...@e2a846, marshalledProperties = null, dataStructure = null,
> redeliveryCounter = 0, size = 0, properties = null, readO
> nlyProperties = true, readOnlyBody = true, droppable = false}
> at
> org.apache.camel.component.jms.JmsBinding.extractBodyFromJms(JmsBinding.java:105)
> at
> org.apache.camel.component.jms.JmsMessage.createBody(JmsMessage.java:148)
> at
> org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:44)
> at
> org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:51)
> at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:74)
> at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:52)
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
> at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
> at
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:72)
> ... 8 more
> Caused by: javax.jms.JMSException: Failed to build body from bytes. Reason:
> java.io.InvalidClassException: org.apache.camel.
> converter.stream.StreamCacheConverter$SourceCache;
> org.apache.camel.converter.stream.StreamCacheConverter$SourceCache; no va
> lid constructor
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:35)
> at
> org.apache.activemq.command.ActiveMQObjectMessage.getObject(ActiveMQObjectMessage.java:183)
> at
> org.apache.camel.component.jms.JmsBinding.extractBodyFromJms(JmsBinding.java:91)
> ... 16 more
> Caused by: java.io.InvalidClassException:
> org.apache.camel.converter.stream.StreamCacheConverter$SourceCache;
> org.apache.cam
> el.converter.stream.StreamCacheConverter$SourceCache; no valid constructor
> at
> java.io.ObjectStreamClass.checkDeserialize(ObjectStreamClass.java:713)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1733)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
> at
> org.apache.activemq.command.ActiveMQObjectMessage.getObject(ActiveMQObjectMessage.java:177)
> ... 17 more
> Caused by: java.io.InvalidClassException:
> org.apache.camel.converter.stream.StreamCacheConverter$SourceCache; no valid
> const
> ructor
> at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:471)
> at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)
> at
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
> at
> org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:98)
> at
> org.apache.activemq.command.ActiveMQObjectMessage.setObject(ActiveMQObjectMessage.java:155)
> at
> org.apache.activemq.ActiveMQSession.createObjectMessage(ActiveMQSession.java:317)
> at
> org.apache.activemq.pool.PooledSession.createObjectMessage(PooledSession.java:149)
> at
> org.apache.camel.component.jms.JmsBinding.createJmsMessage(JmsBinding.java:334)
> at
> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:197)
> at
> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:229)
> at
> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:570)
> at
> org.springframework.jms.core.JmsTemplate$4.doInJms(JmsTemplate.java:551)
> at
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471)
> at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:548)
> at
> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:227)
> at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcesso
> rTypeConverter.java:43)
> at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:84)
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:87)
> at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:82)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:189)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:133)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:115)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:89)
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:87)
> at
> org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:82)
> at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:52)
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
> at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
> at
> org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:94)
> at
> org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:73)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:600)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:554)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:510)
> at
> org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> ... 1 more
> Please help :)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.