JavaTM 2 Platform
Ent. Ed. v1.4

javax.xml.soap
Interface SOAPFault

All Superinterfaces:
Element, Node, Node, SOAPBodyElement, SOAPElement

public interface SOAPFault
extends 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.

The SOAPFault interface provides methods for retrieving the information contained in a SOAPFault object and for setting the fault code, the fault actor, and a string describing the fault. A fault code is one of the codes defined in the SOAP 1.1 specification that describe the fault. An actor is an intermediate recipient to whom a message was routed. The message path may include one or more actors, or, if no actors are specified, the message goes only to the default actor, which is the final intended recipient.


Field Summary
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Method Summary
 Detail addDetail()
          Creates an optional Detail object and sets it as the Detail object for this SOAPFault object.
 Detail getDetail()
          Returns the optional detail element for this SOAPFault object.
 String getFaultActor()
          Gets the fault actor for this SOAPFault object.
 String getFaultCode()
          Gets the fault code for this SOAPFault object.
 Name getFaultCodeAsName()
          Gets the mandatory SOAP 1.1 fault code for this SOAPFault object as a SAAJ Name object.
 String getFaultString()
          Gets the fault string for this SOAPFault object.
 Locale getFaultStringLocale()
          Gets the locale of the fault string for this SOAPFault object.
 void setFaultActor(String faultActor)
          Sets this SOAPFault object with the given fault actor.
 void setFaultCode(Name faultCodeQName)
          Sets this SOAPFault object with the given fault code.
 void setFaultCode(String faultCode)
          Sets this SOAPFault object with the give fault code.
 void setFaultString(String faultString)
          Sets the fault string for this SOAPFault object to the given string.
 void setFaultString(String faultString, Locale locale)
          Sets the fault string for this SOAPFault object to the given string and localized to the given locale.
 
Methods inherited from interface javax.xml.soap.SOAPElement
addAttribute, addChildElement, addChildElement, addChildElement, addChildElement, addChildElement, addNamespaceDeclaration, addTextNode, getAllAttributes, getAttributeValue, getChildElements, getChildElements, getElementName, getEncodingStyle, getNamespacePrefixes, getNamespaceURI, getVisibleNamespacePrefixes, removeAttribute, removeContents, removeNamespaceDeclaration, setEncodingStyle
 
Methods inherited from interface javax.xml.soap.Node
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
 
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix
 
Methods inherited from interface org.w3c.dom.Element
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS
 

Method Detail

setFaultCode

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 QName. 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).

Parameters:
faultCodeQName - a Name object giving the fault code to be set. It must be namespace qualified.
Throws:
SOAPException - if there was an error in adding the faultcode element to the underlying XML tree.
Since:
SAAJ 1.2
See Also:
getFaultCodeAsName()

setFaultCode

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.

Parameters:
faultCode - a String giving the fault code to be set. It must be of the form "prefix:localName" where the prefix has been defined in a namespace declaration.
Throws:
SOAPException - if there was an error in adding the faultCode to the underlying XML tree.
See Also:
setFaultCode(Name), getFaultCode(), SOAPElement.addNamespaceDeclaration(java.lang.String, java.lang.String)

getFaultCodeAsName

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.

In the future, a QName object version of this method may also be added.

Returns:
a Name representing the faultcode
Since:
SAAJ 1.2
See Also:
setFaultCode(Name)

getFaultCode

public String getFaultCode()
Gets the fault code for this SOAPFault object.

Returns:
a String with the fault code
See Also:
getFaultCodeAsName(), setFaultCode(javax.xml.soap.Name)

setFaultActor

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.

Parameters:
faultActor - a String identifying the actor that caused this SOAPFault object
Throws:
SOAPException - if there was an error in adding the faultActor to the underlying XML tree.
See Also:
getFaultActor()

getFaultActor

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

Returns:
a String giving the actor in the message path that caused this SOAPFault object
See Also:
setFaultActor(java.lang.String)

setFaultString

public void setFaultString(String faultString)
                    throws SOAPException
Sets the fault string for this SOAPFault object to the given string.

Parameters:
faultString - a String giving an explanation of the fault
Throws:
SOAPException - if there was an error in adding the faultString to the underlying XML tree.
See Also:
getFaultString()

setFaultString

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.

Parameters:
faultString - a String giving an explanation of the fault
locale - a Locale object indicating the native language of the faultString
Throws:
SOAPException - if there was an error in adding the faultString to the underlying XML tree.
Since:
SAAJ 1.2
See Also:
getFaultString()

getFaultString

public String getFaultString()
Gets the fault string for this SOAPFault object.

Returns:
a String giving an explanation of the fault
See Also:
setFaultString(String), setFaultString(String, Locale)

getFaultStringLocale

public Locale getFaultStringLocale()
Gets the locale of the fault string for this SOAPFault object.

Returns:
a Locale object indicating the native language of the fault string or null if no locale was specified
Since:
SAAJ 1.2
See Also:
setFaultString(String, Locale)

getDetail

public Detail getDetail()
Returns the optional detail element for this SOAPFault object.

A Detail object carries application-specific error information related to SOAPBodyElement objects.

Returns:
a Detail object with application-specific error information

addDetail

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.

Returns:
the new Detail object
Throws:
SOAPException - if this SOAPFault object already contains a valid Detail object
SOAPException

JavaTM 2 Platform
Ent. Ed. v1.4

Submit a bug or feature

Copyright 2003 Sun Microsystems, Inc. All rights reserved.