Philipp,

>From what I see in the logging, I think you might be mixing up the
Camel NMR component (http://camel.apache.org/nmr.html) with the Camel
JBI component (http://camel.apache.org/jbi.html).  It looks like your
sender route use a to("nmr:...") while the receiver route starts with
from("jbi:...").  We use the NMR internally to build our JBI
compatibility layer in ServiceMix 4.x, but the JBI specification is
bit more strict and detailed so not every NMR exchange will make a
suitable JBI exchange.

Could you ensure that both ends are using the same Camel component
(preferably the NMR component unless you're really using JBI for some
reason)?  Also, the NMR allows for using simpler endpoint names, so
you don't need to use those lengthy full-qualified names if you switch
to the NMR.  Something like .to("nmr:FaultService") and
.from("nmr:FaultService") should work as well.

Regards,

Gert Vanthienen
------------------------
FuseSource
Web: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



On Tue, Feb 8, 2011 at 10:39 PM, prossman
<[email protected]> wrote:
>
> Hi,
>
> My setup is as follows:
> I have an onException clause which creates a SOAP fault for returning it to
> the user and uses a ProducerTemplate for forwarding the same Fault embedded
> in a different structure to another endpoint (the idea is to have a service
> collecting all errors for later processing).
>
> The exchange arrives at the receiving end, _but_ without the message body,
> as can be seen in the trace below.
>
> Any idea what this may be related to?
>
> Thanks,
> Ciao, Philipp
>
>>>
> ...
> 22:33:31,218 | DEBUG | rovider-thread-1 | NMR                              |
> .servicemix.nmr.core.ChannelImpl  198 | 84 - org.apache.servicemix.nmr.core
> - 1.3.0.fuse-02-00 | Channel
> org.apache.servicemix.nmr.core.ChannelImpl@33d6f1 delivering exchange: [
>  id:        f6d4b284-dec6-44f0-abbb-61a2b39db764
>  mep:       InOnly
>  status:    Active
>  role:      Consumer
>  target:
> PropertyMatchingReference[{NAME={http://setools.t-systems.es/tsisb/TSB/FaultManagementService/V1}FaultManagementService:FaultManagementServicePortTsfEsProvTEP}]
>  properties: [
>      CamelToEndpoint =
> nmr://{http://setools.t-systems.es/tsisb/TSB/FaultManagementService/V1}FaultManagementService:FaultManagementServicePortTsfEsProvTEP?synchronous=true
>  ]
>  In: [
>    content: <?xml version="1.0" encoding="UTF-8"
> standalone="yes"?><ns2:SendFaults
> xmlns:ns2="http://setools.t-systems.es/tsisb/TSB/FaultManagementService/V1";
> xmlns="http://setools.t-systems.es/tsisb/BUO/Commons/V1";><ns2:SendFault><Fault><FaultIdentifier><FaultUID>urn:uuid:5d5e19f6-c407-4f1c-b0f8-3a4a4b24e4f2</FaultUID><DataReference>urn:uuid:943f7916-734e-4dc9-be39-1a4ec2b16596</DataReference><FaultSystem>tsb:UNKNOWN.SYSTEM</FaultSystem><FaultCode>CAM.0002</FaultCode></FaultIdentifier><FaultClass>System</FaultClass><Criticality>ERROR</Criticality><FaultInstant>2011-02-08T22:33:31.187+01:00</FaultInstant><FaultTrace>es.gedasgrp.framework.services.FwkServicesRuntimeException
>        at
> es.gedasgrp.framework.services.FwkServicesExceptionUtil.getFwkServicesException(FwkServicesExceptionUtil.java:31)
>        at
> es.gedasgrp.framework.services.FwkServicesExceptionUtil.getFwkServicesException(FwkServicesExceptionUtil.java:114)
>        at
> es.gedasgrp.framework.services.FwkServicesExceptionUtil.getFwkServicesRuntimeException(FwkServicesExceptionUtil.java:55)
>        at
> es.gedasgrp.framework.tsisb.common.camel.FwkServicesExceptionProcessor.process(FwkServicesExceptionProcessor.java:69)
>        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.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
>        at org.apache.camel....
>  ]
> ]
>
>
> 22:33:31,218 | DEBUG | rovider-thread-2 | OsgiCamelJbiComponent            |
> icemix.common.AsyncBaseLifeCycle  586 | 94 - servicemix-common -
> 2010.02.0.fuse-02-00 | Received exchange: status: Active, role: provider
>
> 22:33:31,218 | DEBUG | rovider-thread-2 | OsgiCamelJbiComponent            |
> icemix.common.AsyncBaseLifeCycle  647 | 94 - servicemix-common -
> 2010.02.0.fuse-02-00 | Retrieved correlation id: null
>
> 22:33:31,218 | DEBUG | rovider-thread-2 | OsgiCamelJbiComponent            |
> emix.camel.CamelProviderEndpoint  101 | 94 - servicemix-common -
> 2010.02.0.fuse-02-00 | Received exchange:
> org.apache.servicemix.jbi.runtime.impl.InOnlyImpl@b37561
>
> 22:33:31,234 | DEBUG | rovider-thread-2 | JbiBinding                       |
> ache.servicemix.camel.JbiBinding  112 | 153 - servicemix-camel -
> 2010.02.0.fuse-02-00 | Set the thread context classloader
> BundleDelegatingClassLoader for [Connector :: TSISB FaultManagementService
> :: RoutingOSGi (tsb-conn-es-faultmanagement-prov-route)]
>
> 22:33:31,234 | DEBUG | rovider-thread-2 | es                               |
> rg.apache.camel.processor.Logger  197 | 72 - org.apache.camel.camel-core -
> 2.4.0.fuse-02-00 | Processing in FaultManagement
> 33b70e11-f658-4f10-a3d4-0b35d2bce7c5!
>
> 22:33:31,234 | DEBUG | rovider-thread-2 | es                               |
> rg.apache.camel.processor.Logger  197 | 72 - org.apache.camel.camel-core -
> 2.4.0.fuse-02-00 | Processing in FaultManagement
> 33b70e11-f658-4f10-a3d4-0b35d2bce7c5!
>
> 22:33:31,234 | DEBUG | rovider-thread-2 | SendProcessor                    |
> .camel.processor.SendProcessor$2  102 | 72 - org.apache.camel.camel-core -
> 2.4.0.fuse-02-00 | >>>>
> Endpoint[log://tsisb.conn.tsb.faultmanagement.prov.es?showAll=true]
> Exchange[Message: [Body is null]]
>
> 22:33:31,234 | INFO  | rovider-thread-2 | es                               |
> rg.apache.camel.processor.Logger   88 | 72 - org.apache.camel.camel-core -
> 2.4.0.fuse-02-00 | Exchange[Id:c28beba1-8e75-4611-93f5-c22ca45a1391,
> ExchangePattern:InOnly,
> Properties:{CamelToEndpoint=log://tsisb.conn.tsb.faultmanagement.prov.es?showAll=true,
> JbiMessageExchange=org.apache.servicemix.jbi.runtime.impl.InOnlyImpl@b37561},
> Headers:{}, BodyType:null, Body:null, Out: null]
>
> 22:33:31,234 | INFO  | rovider-thread-2 | es                               |
> rg.apache.camel.processor.Logger   88 | 72 - org.apache.camel.camel-core -
> 2.4.0.fuse-02-00 | Exchange[Id:c28beba1-8e75-4611-93f5-c22ca45a1391,
> ExchangePattern:InOnly,
> Properties:{CamelToEndpoint=log://tsisb.conn.tsb.faultmanagement.prov.es?showAll=true,
> JbiMessageExchange=org.apache.servicemix.jbi.runtime.impl.InOnlyImpl@b37561},
> Headers:{}, BodyType:null, Body:null, Out: null]
> ...
> <<
> --
> View this message in context: 
> http://servicemix.396122.n5.nabble.com/Losing-message-body-while-sending-via-NMR-tp3376674p3376674.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>

Reply via email to