XMLWordPrintableJSON

Details

    Description

      When using a JdbcAuditor, upon trying to serialize the message exchange, you get this exception. Since the class is from CXF, I guess this only happens when using one of the CXF components.

      ERROR - JdbcAuditor                    - Could not persist exchange
      java.io.NotSerializableException: org.apache.cxf.service.model.MessageInfo
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at java.util.HashMap.writeObject(HashMap.java:1039)
              at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:585)
              at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
              at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.NormalizedMessageImpl.writeExternal(NormalizedMessageImpl.java:311)
              at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1310)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1288)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.ExchangePacket.writeExternal(ExchangePacket.java:406)
              at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1310)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1288)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.ExchangePacket.getData(ExchangePacket.java:472)
              at org.apache.servicemix.jbi.audit.jdbc.JdbcAuditor.exchangeSent(JdbcAuditor.java:122)
              at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:379)
              at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:431)
              at org.apache.servicemix.common.EndpointDeliveryChannel.send(EndpointDeliveryChannel.java:79)
              at org.apache.cxf.transport.jbi.JBIDestinationOutputStream.commitOutputMessage(JBIDestinationO
      utputStream.java:122)
              at org.apache.cxf.transport.jbi.JBIDestinationOutputStream.doClose(JBIDestinationOutputStream.java:66)
              at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:156)
              at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
              at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
              at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
              at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:74)
              at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
              at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:77)
              at org.apache.cxf.transport.jbi.JBIDispatcherUtil.dispatch(JBIDispatcherUtil.java:156)
              at org.apache.servicemix.cxfse.CxfSeEndpoint.process(CxfSeEndpoint.java:232)
              at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
              at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
              at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
              at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
              at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
              at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
              at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
              at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
              at java.lang.Thread.run(Thread.java:595)
      ERROR - JdbcAuditor                    - Could not persist exchange
      java.io.NotSerializableException: org.apache.cxf.service.model.MessageInfo
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at java.util.HashMap.writeObject(HashMap.java:1039)
              at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:585)
              at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
              at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.NormalizedMessageImpl.writeExternal(NormalizedMessageImpl.java:311)
              at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1310)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1288)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.ExchangePacket.writeExternal(ExchangePacket.java:406)
              at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1310)
              at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1288)
              at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
              at org.apache.servicemix.jbi.messaging.ExchangePacket.getData(ExchangePacket.java:472)
              at org.apache.servicemix.jbi.audit.jdbc.JdbcAuditor.exchangeSent(JdbcAuditor.java:122)
              at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:379
      

      Attachments

        Activity

          People

            ffang Freeman Yue Fang
            gertvanthienen Gert Vanthienen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: