Hi Bruce,
+1 to Hiram's proposal.
I cannot speak about the original intentions, but since the idea of
fault is only specific to just a few of the technologies camel
supports, I think having a fault in an exchange could be quite
confusing for other components. I think it should be up to a
component to decide what to do with the faults, camel-cxf in this case.
Some expressed the point of view that faults *are* exceptions. I am
not sure if that meant that they should be of an Exception type, or
that they should be handled as exceptions by the middleware
infrastructure. I later thought they probably meant the former, which
is fine. The out in the exchange could hold an Exception which may or
may not be handled by camel depending on how the route is defined.
My $0.02
Hadrian
On Apr 30, 2008, at 12:28 PM, Bruce Snyder wrote:
On Wed, Apr 30, 2008 at 9:56 AM, Hiram Chirino
<[EMAIL PROTECTED]> wrote:
When I think faults I always think soap faults. And I think that was
the main use case behind adding the the fault message in the
exchange.
But the fact is that a fault is just the out message from soap. A
soap processor could inspect that out message and notice it's of a
fault variety. So my vote is to eliminate the fault message and
store
faults in the out message.
IMO, exceptions thrown by camel processors should be due to internal
camel errors due to things like not having connectivity or invalid
configuration etc. etc. Accessing a soap service which returns a
fault
message should not be an exception, it's just a error response that
needs to get routed.
This discussion immediately makes me think of the fault propagation
rules in WSDL 2.0 which are used to specify the recipient of the fault
message. There are three rules in WSDL 2.0:
1) Fault replaces message - fault might not be sent to the message
originator
2) Message triggers fault - fault must be sent to the message
originator
3) No faults - faults are discarded
Was there any intention when originally putting faults into Camel to
cover these rules at all? Or is this not a concern at all?
Bruce
--
perl -e 'print unpack("u30","D0G)[EMAIL PROTECTED]&5R\"F)R=6-E+G-N>61E<D\!
G;6%I;\"YC;VT*"
);'
Apache ActiveMQ - http://activemq.org/
Apache Camel - http://activemq.org/camel/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Blog: http://bruceblog.org/