Home » xml-commons-external-1.4.01-src » javax » xml » soap » [javadoc | source]
javax.xml.soap
public interface: SOAPFault [javadoc | source]

All Implemented Interfaces:
    SOAPBodyElement

An element in the SOAPBody object that contains error and/or status information. This information may relate to errors in the SOAPMessage object or to problems that are not related to the content in the message itself. Problems not related to the message itself are generally errors in processing, such as the inability to communicate with an upstream server.

Depending on the protocol specified while creating the MessageFactory instance, a SOAPFault has sub-elements as defined in the SOAP 1.1/SOAP 1.2 specification.
Method from javax.xml.soap.SOAPFault Summary:
addDetail,   addFaultReasonText,   appendFaultSubcode,   getDetail,   getFaultActor,   getFaultCode,   getFaultCodeAsName,   getFaultCodeAsQName,   getFaultNode,   getFaultReasonLocales,   getFaultReasonText,   getFaultReasonTexts,   getFaultRole,   getFaultString,   getFaultStringLocale,   getFaultSubcodes,   hasDetail,   removeAllFaultSubcodes,   setFaultActor,   setFaultCode,   setFaultCode,   setFaultCode,   setFaultNode,   setFaultRole,   setFaultString,   setFaultString
Method from javax.xml.soap.SOAPFault Detail:
 public Detail addDetail() throws SOAPException
    Creates an optional Detail object and sets it as the Detail object for this SOAPFault object.

    It is illegal to add a detail when the fault already contains a detail. Therefore, this method should be called only after the existing detail has been removed.

 public  void addFaultReasonText(String text,
    Locale locale) throws SOAPException
    Appends or replaces a Reason Text item containing the specified text message and an xml:lang derived from locale. If a Reason Text item with this xml:lang already exists its text value will be replaced with text. The locale parameter should not be null

    Code sample:

    SOAPFault fault = ...;
    fault.addFaultReasonText("Version Mismatch", Locale.ENGLISH);
    
 public  void appendFaultSubcode(QName subcode) throws SOAPException
    Adds a Subcode to the end of the sequence of Subcodes contained by this SOAPFault. Subcodes, which were introduced in SOAP 1.2, are represented by a recursive sequence of subelements rooted in the mandatory Code subelement of a SOAP Fault.
 public Detail getDetail()
    Returns the optional detail element for this SOAPFault object.

    A Detail object carries application-specific error information, the scope of the error information is restricted to faults in the SOAPBodyElement objects if this is a SOAP 1.1 Fault.

 public String getFaultActor()
    Gets the fault actor for this SOAPFault object.

    If this SOAPFault supports SOAP 1.2 then this call is equivalent to #getFaultRole()

 public String getFaultCode()
    Gets the fault code for this SOAPFault object.
 public Name getFaultCodeAsName()
    Gets the mandatory SOAP 1.1 fault code for this SOAPFault object as a SAAJ Name object. The SOAP 1.1 specification requires the value of the "faultcode" element to be of type QName. This method returns the content of the element as a QName in the form of a SAAJ Name object. This method should be used instead of the getFaultCode method since it allows applications to easily access the namespace name without additional parsing.
 public QName getFaultCodeAsQName()
    Gets the fault code for this SOAPFault object as a QName object.
 public String getFaultNode()
    Returns the optional Node element value for this SOAPFault object. The Node element is optional in SOAP 1.2.
 public Iterator getFaultReasonLocales() throws SOAPException
    Returns an Iterator over a distinct sequence of Locales for which there are associated Reason Text items. Any of these Locales can be used in a call to getFaultReasonText in order to obtain a localized version of the Reason Text string.
 public String getFaultReasonText(Locale locale) throws SOAPException
    Returns the Reason Text associated with the given Locale. If more than one such Reason Text exists the first matching Text is returned
 public Iterator getFaultReasonTexts() throws SOAPException
    Returns an Iterator over a sequence of String objects containing all of the Reason Text items for this SOAPFault.
 public String getFaultRole()
    Returns the optional Role element value for this SOAPFault object. The Role element is optional in SOAP 1.2.
 public String getFaultString()
    Gets the fault string for this SOAPFault object.

    If this SOAPFault is part of a message that supports SOAP 1.2 then this call is equivalent to:

       String reason = null;
       try {
           reason = (String) getFaultReasonTexts().next();
       } catch (SOAPException e) {}
       return reason;
    
 public Locale getFaultStringLocale()
    Gets the locale of the fault string for this SOAPFault object.

    If this SOAPFault is part of a message that supports SOAP 1.2 then this call is equivalent to:

       Locale locale = null;
       try {
           locale = (Locale) getFaultReasonLocales().next();
       } catch (SOAPException e) {}
       return locale;
    
 public Iterator getFaultSubcodes()
    Gets the Subcodes for this SOAPFault as an iterator over QNames.
 public boolean hasDetail()
    Returns true if this SOAPFault has a Detail subelement and false otherwise. Equivalent to (getDetail()!=null).
 public  void removeAllFaultSubcodes()
    Removes any Subcodes that may be contained by this SOAPFault. Subsequent calls to getFaultSubcodes will return an empty iterator until a call to appendFaultSubcode is made.
 public  void setFaultActor(String faultActor) throws SOAPException
    Sets this SOAPFault object with the given fault actor.

    The fault actor is the recipient in the message path who caused the fault to happen.

    If this SOAPFault supports SOAP 1.2 then this call is equivalent to #setFaultRole(String)

 public  void setFaultCode(Name faultCodeQName) throws SOAPException
    Sets this SOAPFault object with the given fault code.

    Fault codes, which give information about the fault, are defined in the SOAP 1.1 specification. A fault code is mandatory and must be of type Name. This method provides a convenient way to set a fault code. For example,

    SOAPEnvelope se = ...;
    // Create a qualified name in the SOAP namespace with a localName
    // of "Client". Note that prefix parameter is optional and is null
    // here which causes the implementation to use an appropriate prefix.
    Name qname = se.createName("Client", null,
                               SOAPConstants.URI_NS_SOAP_ENVELOPE);
    SOAPFault fault = ...;
    fault.setFaultCode(qname);
    
    It is preferable to use this method over #setFaultCode(String) .
 public  void setFaultCode(QName faultCodeQName) throws SOAPException
    Sets this SOAPFault object with the given fault code. It is preferable to use this method over #setFaultCode(Name) .
 public  void setFaultCode(String faultCode) throws SOAPException
    Sets this SOAPFault object with the give fault code.

    Fault codes, which given information about the fault, are defined in the SOAP 1.1 specification. This element is mandatory in SOAP 1.1. Because the fault code is required to be a QName it is preferable to use the #setFaultCode(Name) form of this method.

 public  void setFaultNode(String uri) throws SOAPException
    Creates or replaces any existing Node element value for this SOAPFault object. The Node element is optional in SOAP 1.2.
 public  void setFaultRole(String uri) throws SOAPException
    Creates or replaces any existing Role element value for this SOAPFault object. The Role element is optional in SOAP 1.2.
 public  void setFaultString(String faultString) throws SOAPException
    Sets the fault string for this SOAPFault object to the given string.

    If this SOAPFault is part of a message that supports SOAP 1.2 then this call is equivalent to:

         addFaultReasonText(faultString, Locale.getDefault());
    
 public  void setFaultString(String faultString,
    Locale locale) throws SOAPException
    Sets the fault string for this SOAPFault object to the given string and localized to the given locale.

    If this SOAPFault is part of a message that supports SOAP 1.2 then this call is equivalent to:

         addFaultReasonText(faultString, locale);