Re: Question regarding uniqueness of soap Fault in body

Ed,

consider a streaming receiver of the stream response you are generating.
It sees some correct responses and handles them and then it sees the
fault - what should it do now?

The answer (e.g. "just stop further processing" or "undo anything done
by this message") depends on the application and the are is very
difficult to solve once and for all. That's why SOAP 1.2 doesn't even
pretend to go there. An application that does such streaming can allow
an application-defined failure block (after the previously streamed body
blocks). This failure block is assumed to have a well-defined version of
the answer.

In other words, SOAP 1.2 doesn't consider boxcarring and its faulting
mechanism is message-level (the incoming message is faulty so the whole
result message is a fault).

The key is that SOAP 1.2 doesn't prevent you from desiging the failure
block as a part of your application (which is really necessary anyway
because of the differences in the answer above).

Best regards

                   Jacek Kopecky

                   Senior Architect, Systinet Corporation
                   http://www.systinet.com/



On Tue, 2002-10-15 at 22:30, Ed Roskos wrote:
> 
> 
> In the SOAP 1.2 working draft:
> 
> http://www.w3.org/TR/2002/WD-soap12-part1-20020626/#soapfault
> 
> section 5.4: SOAP Fault,
> 
> it states:
> 
> "To be recognized as carrying SOAP error information,
> a SOAP message MUST contain a single SOAP Fault
> element information item as the only child of the SOAP
> Body .
> 
> When generating a fault, SOAP senders MUST NOT include
> additional element information items in the SOAP Body
> . A message whose Body contains a Fault plus
> additional element information items has no
> SOAP-defined semantics."
> 
> A dilemna I am facing is that a response message I
> generate from an application is streamed, and an error
> may occur some time after I start streaming the
> response.  Because of resource restrictions on the
> server platform, I cannot know before I start
> streaming whether or not an error will occur.  My
> understanding of SOAP 1.1 is that I can add a Fault
> element in the output after previous elements have
> already been streamed (provided, of course, I make it
> a direct child of the Body element).  In SOAP 1.2,
> this is not possible, and I am left indicating the
> error in some other fashion.
> 
> I looked in the archives (only recently joined this
> group...) and could not find a reason for why this
> restriction was added.  May I suggest the board
> reconsider whether the Fault element must be unique
> in 1.2?
> 

Received on Wednesday, 16 October 2002 08:38:17 UTC