[OGSA-BES-WG] BES Faults

Ian Foster foster at mcs.anl.gov
Wed Nov 29 16:56:14 CST 2006


Chris:

I recall a discussion of this a while back, and thought that we agreed 
then that we would not use WS-BaseFaults.

Ian.

Christopher Smith wrote:
> Hi all,
>
> Just wanted to start some discussion on how to render faults for BES.
>
>
> The first thing to state is that I'm assuming the use of SOAP 1.1 for
> messaging, as this is the version referenced in the WS-I BP version 1.1.
> Please correct me if I'm wrong....
>
> The second is that for now I'm ignoring WS-BaseFaults, as I think it would
> be very difficult to reach consensus on it's use in a short amount of time.
>
>
> The BES specification defines a few faults:
>
> (contained in SOAP Fault element in response)
> - NotAcceptingNewActivities
> - UnsupportedJSDLVersionFault
> - UnsupportedFeatureFault
>
> (contained in a response body)
> - ActivityDoesNotExistFault
> - CantApplyOperationToCurrentState   <-- implied in doc as a todo
>
>
> We can render these in one of two ways:
>
> 1. We define new faultcode elements for these faults, and the detail can
> provide a higher level of information if needed. I'm not clear on how easy
> this is for most people from the tooling point of view. It would also
> require the WSDL to reflect the new fault codes (is this true?).
>
> 2. We define a set of fault elements that can either be used in the detail
> element, or on their own in some response elements. These fault elements
> wouldn't be "anyType", but would just be empty complexTypes.
>
> I prefer number 2 as this is quite straightforward from a tooling support
> point of view. Here are some examples of the various fault messages.
>
>
> Actual SOAP faults:
>
> <soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope">
>   <faultcode>soap:Server</faultcode>
>   <faultstring>This BES is not accepting new activites now</faultstring>
>   <detail>
>     <bes:NotAcceptingNewActivities xmlns:bes="..."/>
>   </detail>
> </soap:Fault>
>
> <soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope">
>   <faultcode>soap:Client</faultcode>
>   <faultstring>Sorry ... I don't get it</faultstring>
>   <detail>
>     <bes:UnsupportedFeatureFault xmlns:bes="...">
>       <bes:UnsupportedElement name="jsdl-posix:POSIXApplication"/>
>     </bes:UnsupportedFeatureFault>
>   </detail>
> </soap:Fault>
>
>
> Faults in responses would be done using a type like:
>
> <xsd:complexType name="TerminateActivityResponseType">
>   <xsd:sequence>
>     <xsd:element ref="bes-factory:ActivityIdentifier"/>
>     <xsd:element name="Cancelled" type="xsd:boolean"/>
>     <xsd:element ref="soap:Fault" minOccurs="0"/>        <-- SOAP 1.1 fault
>   </xsd:sequence>
> </xsd:complexType>
>
> So you'd get:
>
> <bes:TerminateActivityResponse xmlns:bes="...">
>   <bes:ActivityIdentifier>EPR</bes:ActivityIdentifier>
>   <bes:Cancelled>false</bes:Cancelled>
>   <soap:Fault>
>     <faultcode>soap:Client</faultcode>
>     <faultstring>That activity doesn't exist</faultstring>
>     <detail><bes:ActivityDoesNotExistFault/></detail>
>   </soap:Fault>
> </bes:TerminateActivityResponse>
>
> <bes:TerminateActivityResponse xmlns:bes="...">
>   <bes:ActivityIdentifier>EPR</bes:ActivityIdentifier>
>   <bes:Cancelled>false</bes:Cancelled>
>   <soap:Fault>
>     <faultcode>soap:Client</faultcode>
>     <faultstring>That activity doesn't exist</faultstring>
>     <detail><bes:CantApplyOperationToCurrentState/></detail>
>   </soap:Fault>
> </bes:TerminateActivityResponse>
>
>
> Comments?
>
>
>
> -- Chris
>
>
> --
>   ogsa-bes-wg mailing list
>   ogsa-bes-wg at ogf.org
>   http://www.ogf.org/mailman/listinfo/ogsa-bes-wg
>
>
>   

-- 

   Ian Foster, Director, Computation Institute
Argonne National Laboratory & University of Chicago
Argonne: MCS/221, 9700 S. Cass Ave, Argonne, IL 60439
Chicago: Rm 405, 5640 S. Ellis Ave, Chicago, IL 60637
Tel: +1 630 252 4619.  Web: www.ci.uchicago.edu.
      Globus Alliance: www.globus.org.



More information about the ogsa-bes-wg mailing list