Raul,

If you are using a recent version of ServiceMix, you can set the attribute useJBIWrapper="false" on the servicemix-cxf-bc consumer endpoint. This will send the plain XML message into the ESB, without the JBI-specific wrapper elements around it.

Regards,

Gert

raulvk wrote:
Hi,

I am using Camel to control the flow of validation, transformation and
routing tasks that are applied to messages entering via ServiceMix CXF's
Binding Component. The CXF consumer endpoint sends the message straightaway
to Camel.

When validating the incoming message, I realized that it is surrounded by
the <jbi:message> wrapper.
How can I get rid of it so as to send the ACTUAL XML message to Camel's
validator?

I have tried the following:

  -   .setBody().xpath("//jbi:message/jbi:part/can:IncomingMessage",
m).to("validator:file:///<schemaLocation>")

    AND
  .   .transform().xpath("//jbi:message/jbi:part/can:IncomingMessage",
m).to("validator:file:///<schemaLocation>")

m is bound to a HashMap containing the NameSpace mappings.

However, the result is always an empty XML Body, which provokes an exception
at the Validator.

Is there an easy way of EXTRACTING the XML payload?

Thank you.

Reply via email to