When is a Fault a Fault?

I went over the binding framework and the HTTP binding and noticed a
problem; no where is it stated how SOAP processors should recognize
faults.

The issue is that sometimes a SOAP node may want to send a message
that includes a Fault, but is not intended to be processed as a
Fault.  An example would be if a SOAP node is asked, perhaps via a
debugging interface, to return the last fault it sent.

Using HTTP as an example, the HTTP response code is used as the
authoritative determinant of the intent; if it's a 2xx response, then
the Fault is not processed as a Fault.  If it's a 4xx or 5xx, then it
is.

What I suggest we do is;

1) update the binding framework to state that each binding should
declare that the authoritative determinant of whether a message is a
fault or not should be the underlying protocol

2) update the default HTTP binding to state that a SOAP Fault MUST
only be processed as a SOAP Fault if the response code is 4xx or 5xx.

MB
-- 
Mark Baker, Chief Science Officer, Planetfred, Inc.
Ottawa, Ontario, CANADA.      mbaker@planetfred.com
http://www.markbaker.ca   http://www.planetfred.com

Received on Sunday, 3 March 2002 01:13:28 UTC