Hi,
here the stack trace [i added the flag
-Dsun.io.serialization.extendedDebugInfo=true to the jvm]:
java.io.NotSerializableException:
org.apache.cxf.ws.addressing.EndpointReferenceType
- field (class
"org.oasis_open.docs.wsn.b_2.NotificationMessageHolderType", name:
"producerReference", type: "class
org.apache.cxf.ws.addressing.EndpointReferenceType")
- object (class
"org.oasis_open.docs.wsn.b_2.NotificationMessageHolderType",
org.oasis_open.docs.wsn.b_2.NotificationMessageHolderType@adba61)
- custom writeObject data (class "java.util.ArrayList")
- object (class "java.util.ArrayList",
[org.oasis_open.docs.wsn.b_2.NotificationMessageHolderType@adba61])
- field (class "org.oasis_open.docs.wsn.b_2.Notify", name:
"notificationMessage", type: "interface java.util.List")
- object (class "org.oasis_open.docs.wsn.b_2.Notify",
org.oasis_open.docs.wsn.b_2.Notify@1ea3610)
- custom writeObject data (class "java.util.ArrayList")
- object (class "org.apache.cxf.message.MessageContentsList",
[org.oasis_open.docs.wsn.b_2.Notify@1ea3610])
- field (class "org.apache.camel.impl.DefaultExchangeHolder", name:
"inBody", type: "class java.lang.Object")
- root object (class "org.apache.camel.impl.DefaultExchangeHolder",
DefaultExchangeHolder[exchangeId=1492302d-ba21-4bcb-98c3-32a3f4772a9dinBody=[org.oasis_open.docs.wsn.b_2.Notify@1ea3610],
outBody
=null, inHeaders={Host=127.0.0.1:8081, operationNamespace=
http://docs.oasis-open.org/wsn/brw-2, User-Agent=Jakarta
Commons-HttpClient/3.1, Content-Type=text/xml;charset=UTF-8,
operationName=Notify, SOAPAct
ion="http://docs.oasis-open.org/wsn/brw-2/NotificationBroker/NotifyRequest",
accept-encoding=gzip,deflate}, outHeaders=null,
properties={CamelToEndpoint=MyQueue://test.IN, CamelCXFDataFormat=POJO},
excepti
on=null])
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1161)
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
at java.util.ArrayList.writeObject(ArrayList.java:570)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1469)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
at java.util.ArrayList.writeObject(ArrayList.java:570)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1469)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
at com.example.MyProducer.serializeObject(MyProducer.java:40)
at com.example.MyProducer.process(MyProducer.java:22)
at
org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)
at
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)
at
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
at
org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:143)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:78)
at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:99)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:91)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
at
org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:97)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
at
org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:218)
at
org.apache.cxf.ws.addressing.ContextUtils$1.run(ContextUtils.java:436)
at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$2.run(AutomaticWorkQueueImpl.java:332)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Regards
Hervé
On Fri, Apr 20, 2012 at 10:41 AM, Filippo Balicchia <[email protected]>wrote:
> Hello,
> could you please attach stacktrace
>
> please
>
> Cheers
>
>
> --Filippo
>
> Il 19 aprile 2012 13:26, Hervé BARRAULT <[email protected]> ha
> scritto:
> > Hi,
> >
> > I am using the cxf-bundle in servicemix.
> >
> > The cxf-bundle provides the package (and export)
> > org.apache.cxf.ws.addressing (in CXF it is from cxf-api).
> >
> > For my use case, i have a problem with this package.
> >
> > It provides some generated classes (using xjc) which are not
> serializable.
> >
> > I used the cxf-codegen-plugin to generate the same classes (with the
> > serializable option).
> >
> > And deploy a web service using CAMEL/CXF in pojo mode.
> >
> > When i receive my message from web service the package
> > org.apache.cxf.ws.addressing (from cxf) is used. So when i try to
> serialize
> > the object it fails due to serialization issue.
> >
> > I have tried to import in my bundle only my version of this package but
> it
> > seems not working.
> >
> >
> > In order to be clear :
> >
> > Bundle cxf-bundle
> > export org.apache.cxf.ws.addressing;version=X.Y.Z
> >
> > Bundle my-ws-bundle
> > export org.apache.cxf.ws.addressing;version=A.B.C
> >
> > Bundle my-cxf-camel-bundle
> > import org.apache.cxf.ws.addressing;version=A.B.C
> > import org.apache.cxf.*;version=XYZ (I import other classes of CXF
> > using XYZ version)
> >
> > My code in my-cxf-camel-bundle (using a CamelCxfEndpoint in pojo mode)
> > received an object which is in package org.apache.cxf.ws.addressing but
> > with the version X.Y.Z
> > [X.Y.Z version does not implement serializable whereas A.B.C version
> does].
> >
> > What am i missing when using OSGi mechanism ?
> >
> > Thanks for answers
> > Regards
> >
> > Hervé
>