If you send java objects over JMS then make sure the .class files is
on both brokers. And that the java object properly supports
serialization.

If you instead want to send a javax.jms.TextMessage, then you can
force Camel to use that using the option
jmsMessageType=Text

   <to uri="bean:isAuthZBlocked?method=checkRequest&jmsMessageType=Text" />



On Wed, Jul 6, 2011 at 1:23 PM, Andrè <morpheusan...@web.de> wrote:
> i get this exception at broker A, where it shouldn´t appear in my opinition
> the ClassNotFoundException is result of receiving the ContextRequestType
> which sounds clear, but why do i receive it ?? because the class is the
> result of the unmarshalling , so it shouldnt be directed to the wire , right
> ?
> Why is it distributed ?
> (sry but it may be an active mq issue)
> Broker A
>                <route>
>                        <from uri="direct:injectRequest" />
>                        <to uri="bean:isAuthZBlocked?method=checkRequest" />
>                        <doTry>
>                                <to
> uri="activemq:topic:services.global.xacml.authzRequests?transferException=true"
> />
>                                <doCatch>
>
>                                        
> <exception>org.apache.camel.RuntimeCamelException
>                                        </exception>
>                                        <process ref="ExceptionDeWrapper" />
>                                </doCatch>
>                        </doTry>
>                </route>
>
> Broker B (not the subscriber, which really responds to payload send from A,
> just evaluates it)
>   <route id="DroolsIncomingroute">
>        <from uri="activemq:topic:services.global.>"/>
>        <policy ref="droolsPolicy">
>            <unmarshal ref="Xacml20jaxb"/>
>            <to uri="drools:node1/ksession1?action=insertBody"/>
>        </policy>
>    </route>
>
> org.apache.camel.RuntimeCamelException: Failed to extract body due to:
> javax.jms.JMSException: Failed to build body from content. Serializable
> class not available to broker. Reason: java.lang.ClassNotFoundException:
> de.tarent.abiege.jaxb.generated.xacml.context.ContextRequestType. Message:
> ActiveMQObjectMessage {commandId = 15, responseRequired = false, messageId =
> ID:abiege.bonn.tarent.de-43271-1309947486470-2:1:1:1:32, originalDestination
> = null, originalTransactionId = null, producerId =
> ID:abiege.bonn.tarent.de-43271-1309947486470-75:1:1:1, destination =
> temp-queue://ID:abiege.bonn.tarent.de-40803-1309949900778-4:7:1,
> transactionId = null, expiration = 0, timestamp = 1309949908328, arrival =
> 0, brokerInTime = 1309949908338, brokerOutTime = 1309949908338,
> correlationId = ID-abiege-bonn-tarent-de-40190-1309949900228-2-4, replyTo =
> temp-queue://ID:abiege.bonn.tarent.de-40803-1309949900778-4:7:1, persistent
> = true, type = null, priority = 4, groupID = null, groupSequence = 0,
> targetConsumerId = null, compressed = false, userID = null, content =
> org.apache.activemq.util.ByteSequence@f690e4, marshalledProperties =
> org.apache.activemq.util.ByteSequence@1a29450, dataStructure = null,
> redeliveryCounter = 0, size = 3096, properties = {CamelJmsDeliveryMode=2},
> readOnlyProperties = true, readOnlyBody = true, droppable = false}
>        at
> org.apache.camel.component.jms.JmsBinding.extractBodyFromJms(JmsBinding.java:159)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.component.jms.JmsMessage.createBody(JmsMessage.java:183)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:41)[camel-core-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.component.jms.reply.ReplyManagerSupport.processReply(ReplyManagerSupport.java:124)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.component.jms.reply.TemporaryQueueReplyHandler.onReply(TemporaryQueueReplyHandler.java:52)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.component.jms.reply.TemporaryQueueReplyManager.handleReplyMessage(TemporaryQueueReplyManager.java:66)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.apache.camel.component.jms.reply.ReplyManagerSupport.onMessage(ReplyManagerSupport.java:110)[camel-jms-2.6.0-fuse-00-00.jar:2.6.0-fuse-00-00]
>        at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:560)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:498)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)[spring-jms-3.0.5.RELEASE.jar:3.0.5.RELEASE]
>        at java.lang.Thread.run(Thread.java:636)[:1.6.0_18]
>
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/Failed-to-build-body-from-content-Serializable-class-not-available-to-broker-tp4556486p4556486.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to