Ok. I've narrowed that error happening once the Network of Brokers connection is made...

Kit

On May 2, 2007, at 10:33 AM, Kit Plummer wrote:

There is only one SM instance...at least I'm pretty sure of that. I will verify. We are linking two nodes together...but, we see this message way before the connection is made.


On May 2, 2007, at 10:28 AM, Guillaume Nodet wrote:

I think this is more a mismatch between several ServiceMix instances
running on different JVMs or in different environments (with different
QName classes).  This is certainly not a configuration problem.

On 5/2/07, Kit Plummer <[EMAIL PROTECTED]> wrote:

Hey Guys.  Thanks for the effort.

I did realize that there was a mismatch in versions between what we
were compiling against, and what was in the distro.  Thinking this
might be the problem, I having everything matching in our pom.xml.

But, the problem persists.  I'm having trouble mapping it to a
specific message, but think it has to do with a JmsInUsingJCABinding.

<sm:activationSpec componentName="TSB.LI.Caps.Receiver"
                                                service="tsb:
TSB.LI.Caps.Receiver"

failIfNoDestinationEndpoint="false">
                                          <sm:component><bean
class="org.apache.servicemix.components.jms.JmsInUsingJCABinding">

<property name="jcaContainer"
ref="jencks"/>

                                            <property
name="activationSpec">
                                              <bean class="
org.apache.activemq.ra.ActiveMQActivationSpec">
                                                <property
name="destination" value="TSB.LI.Caps"/>
                                                <property
name="destinationType" value="javax.jms.Topic"/>
                                              </bean>
                                            </property>
                                          </bean></sm:component>
                                        </sm:activationSpec>

Attached is the config.



On May 2, 2007, at 1:04 AM, Guillaume Nodet wrote:

> Finding all the classes defining the QName class can be done
> using ClassLoader.getResources().  Then one could load then and
> retrieve the serial UID using introspection i guess ...
>
> On 5/2/07, Gert Vanthienen <[EMAIL PROTECTED]> wrote:
>>
>> Guillaume,
>>
>> A quick "Open Type..." in Eclipse also shows me that a lot of the jar
>> files we use in ServiceMix include their own
>> javax.xml.namespace.QName,
>> so I suppose it wouldn't be that easy to ensure that only a single
>> variant of the class gets loaded at runtime either.  Do you know
>> of any
>> tool to quickly examine the serialVersionUIDs of these classes in
>> order
>> to get this user's problem solved?
>>
>> Gert
>>
>> Guillaume Nodet wrote:
>> > I think one problem may be in the serialization of the
>> MessageExchange
>> > when
>> > using the JMS / JCA flows. The exchange contains QName (for target
>> > service
>> > and interface) and may also contain other QNames (soap headers are
>> > stored in
>> > a map indexed by QNames).
>> > We can easily change the first ones to use plain strings ({xxx}yy
>> > format),
>> > but
>> > it will be much more difficult for the ones we do not control.
>> >
>> > On 5/2/07, Gert Vanthienen <[EMAIL PROTECTED]> wrote:
>> >>
>> >> Kit,
>> >>
>> >> Apparently, you are using multiple (and different) versions of the
>> QName
>> >> class. If this solution is running on multiple JVMs, ensure that
>> >> they're all of the same version.  If it isn't, could you send
>> us the
>> >> servicemix.xml file?  Do you know which are the failing
>> services, as
>> >> this might help us pinpoint the problem?
>> >>
>> >> Gert
>> >>
>> >> Kit Plummer wrote:
>> >> > Getting this a lot when running a few components on the latest
>> >> > apache-servicemix-fuse release:
>> >> >
>> >> > ERROR - JMSFlow                        - Error processing
>> incoming
>> >> > broadcast message
>> >> > javax.jms.JMSException: Failed to build body from bytes. Reason:
>> >> > java.io.InvalidClassException: javax.xml.namespace.QName;
>> local class
>> >> > incompatible: stream classdesc serialVersionUID =
>> 4418622981026545151,
>> >> > local class serialVersionUID = -9120448754896609940
>> >> >         at
>> >> > org.apache.activemq.util.JMSExceptionSupport.create(
>> >> JMSExceptionSupport.java:33)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.command.ActiveMQObjectMessage.getObject(
>> >> ActiveMQObjectMessage.java:172)
>> >> >
>> >> >         at
>> >> >
>> >> org.apache.servicemix.jbi.nmr.flow.jms.JMSFlow$3.onMessage
>> (JMSFlow.java
>> >> :281)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.ActiveMQMessageConsumer.dispatch(
>> >> ActiveMQMessageConsumer.java:841)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.ActiveMQSessionExecutor.dispatch(
>> >> ActiveMQSessionExecutor.java:96)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.ActiveMQSessionExecutor.iterate(
>> >> ActiveMQSessionExecutor.java:165)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.thread.PooledTaskRunner.runTask(
>> >> PooledTaskRunner.java:111)
>> >> >
>> >> >         at
>> >> > org.apache.activemq.thread.PooledTaskRunner.access$100(
>> >> PooledTaskRunner.java:26)
>> >> >
>> >> >         at
>> >> >
>> >> org.apache.activemq.thread.PooledTaskRunner$1.run
>> (PooledTaskRunner.java
>> >> :44)
>> >> >
>> >> >         at
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
>> $Worker.runTask
>> >>
>> >> (ThreadPoolExecutor.java:665)
>> >> >
>> >> >         at
>> >> >
>> >>
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
>> $Worker.run
>> >>
>> >> (ThreadPoolExecutor.java:690)
>> >> >
>> >> >         at java.lang.Thread.run(Thread.java:619)
>> >> > Caused by: java.io.InvalidClassException:
>> javax.xml.namespace.QName;
>> >> > local class incompatible: stream classdesc serialVersionUID =
>> >> > 4418622981026545151, local class serialVersionUID =
>> >> -9120448754896609940
>> >> >         at
>> >> > java.io.ObjectStreamClass.initNonProxy (ObjectStreamClass.java:
>> 562)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readNonProxyDesc
>> (ObjectInputStream.java:1583)
>> >> >         at
>> >> > java.io.ObjectInputStream.readClassDesc
>> (ObjectInputStream.java:1496)
>> >> >         at
>> >> > java.io.ObjectInputStream.readOrdinaryObject
>> (ObjectInputStream.java
>> >> :1732)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:
>> 1329)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.defaultReadFields (ObjectInputStream.java
>> :1945)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData
>> (ObjectInputStream.java:1869)
>> >> >         at
>> >> > java.io.ObjectInputStream.readOrdinaryObject
>> (ObjectInputStream.java
>> >> :1753)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0 (ObjectInputStream.java:
>> 1329)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.defaultReadFields (ObjectInputStream.java
>> :1945)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData
>> (ObjectInputStream.java:1869)
>> >> >         at
>> >> > java.io.ObjectInputStream.readOrdinaryObject
>> (ObjectInputStream.java
>> >> :1753)
>> >> >         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:166)
>> >> >
>> >> >         ... 10 more
>> >> >
>> >> > Should I attach my servicemix.xml?
>> >> >
>> >> > Kit
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Principal Engineer, IONA
> Blog: http://gnodet.blogspot.com/






--
Cheers,
Guillaume Nodet
------------------------
Principal Engineer, IONA
Blog: http://gnodet.blogspot.com/


Reply via email to