strange error handling in Camel CXF (SOAP) for HTTP 500
By accident I came across a strange behavior when simulating error situations for a CXF producer endpoint. As route starting point I use also a CXF endpoint. There is actually no additional configuration like WSDL or steps between the endpoints. Now I configured the simulator endpoint (which is another camel route using http consumer) to return the response code http 500 and an XML payload which is not a SOAP Fault. The CXF consumer endpoint that started the route delivers this response payload and http 200 as return code. I checked Basic Profile Version 1.0 and they only write for a WS provider you have to set http 500 if a SOAP fault is returned. Currently CXF will not execute the fault interceptor chain but a user that directly calls CXF has at least a chance to check the http return code and react appropriately. The current behavior in the Camel route might finally lead to an unexpected behavior.
Is this the desired behavior?
Thanks in advance!