Hi, Following scenario:
<camelContext id="camel" xmlns="http://activemq.apache.org/camel/schema/spring"> <route> <from uri="cxf:bean:routerEndpoint?dataFormat=MESSAGE"/> <process ref="decryptProcessor"/> <choice> <when> <methodCall bean="endpointSelector" method="matches"/> <to uri="cxf:bean:serviceEndpoint?dataFormat=MESSAGE"/> </when> <otherwise> <to uri="cxf:bean:localEndpoint"/> </otherwise> </choice> </route> </camelContext> Where the localEndpoint is POJO (JAXB). The requirements are the following: Route the message to a local endpoint if some criteria matches in the endpointSelector. Otherwise do a invoke of a remote endpoint. An important point is that the message is nowhere marshalled/unmarshalled when the remote endpoint is invoked. Otherwise the wss-signature will be invalid. So handle the message as raw inputStream. All is working fine so far but the localEndpoint invocation. If I specify the dataFormat=MESSAGE on the local endpoint, it works. But an User generated exception will be returned as 200 http code. Do you see any chance to get this mixes dataFormat setup somehow working with camel-cxf? @Willem: I've tested your changes to the fault handling. It's better now but not perfect;-) I have a patch in my queue which solves the custom soap-fault handling in camel-cxf. I will report it in jira. Thanks! Cheers, Marc -- itServe AG Marc Giger Länggassstrasse 26 3000 Bern 9 Tel.: +41 31 305 16 16 Fax: +41 31 305 16 17 Direkt +41 31 305 43 27 Email [EMAIL PROTECTED] http://www.itserve.ch
