Package org.apache.axiom.soap

## Interface SOAPFaultClassifier

- All Superinterfaces:
    `OMContainer`, `OMElement`, `OMInformationItem`, `OMNamedInformationItem`, `OMNode`, `OMSerializable`
  All Known Subinterfaces:
    `SOAPFaultCode`, `SOAPFaultSubCode`

      public interface SOAPFaultClassifier
      extends OMElement

  Common superinterface for `SOAPFaultCode` and `SOAPFaultSubCode`. This interface enables manipulation of SOAP fault codes and SOAP fault sub codes using common code.

- - ### Field Summary

    - ### Fields inherited from interface org.apache.axiom.om.OMNode

      `CDATA_SECTION_NODE, COMMENT_NODE, DTD_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, PI_NODE, SPACE_NODE, TEXT_NODE`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `SOAPFaultSubCode` | `getSubCode()` |
    `SOAPFaultValue` | `getValue()` | Get the `SOAPFaultValue` for this fault code or subcode.
    `QName` | `getValueAsQName()` | Get the value of this fault code or subcode.
    `void` | `setSubCode​(SOAPFaultSubCode subCode)` | Fault SubCode can contain an optional SubCode
    `void` | `setValue​(QName value)` | Set the value of this fault code or subcode.
    `void` | `setValue​(SOAPFaultValue value)` | Fault SubCode contain only one mandatory Value child.

    - ### Methods inherited from interface org.apache.axiom.om.OMContainer

      `addChild, getBuilder, getChildren, getChildrenWithLocalName, getChildrenWithName, getChildrenWithNamespaceURI, getFirstChildWithName, getFirstOMChild, getSAXResult, getSAXSource, getXMLStreamReader, getXMLStreamReader, getXMLStreamReader, getXMLStreamReaderWithoutCaching, getXOPEncodedStreamReader, removeChildren, serialize, serialize, serialize, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume`

    - ### Methods inherited from interface org.apache.axiom.om.OMElement

      `addAttribute, addAttribute, cloneOMElement, declareDefaultNamespace, declareNamespace, declareNamespace, findNamespace, findNamespaceURI, getAllAttributes, getAllDeclaredNamespaces, getAttribute, getAttributeValue, getChildElements, getDefaultNamespace, getDescendants, getFirstElement, getLineNumber, getNamespaceContext, getNamespacesInScope, getText, getTextAsQName, getTextAsStream, removeAttribute, resolveQName, setLineNumber, setNamespace, setNamespaceWithNoFindInCurrentScope, setText, setText, toString, toStringWithConsume, undeclarePrefix, writeTextTo`

    - ### Methods inherited from interface org.apache.axiom.om.OMInformationItem

      `clone, getOMFactory`

    - ### Methods inherited from interface org.apache.axiom.om.OMNamedInformationItem

      `getLocalName, getNamespace, getNamespaceURI, getPrefix, getQName, hasName, setLocalName, setNamespace`

    - ### Methods inherited from interface org.apache.axiom.om.OMNode

      `buildWithAttachments, detach, discard, getNextOMSibling, getParent, getPreviousOMSibling, getType, insertSiblingAfter, insertSiblingBefore`

    - ### Methods inherited from interface org.apache.axiom.om.OMSerializable

      `build, close, isComplete, serialize, serialize, serializeAndConsume`

- - ### Method Detail

    - #### setValue

          void setValue​(SOAPFaultValue value)
                 throws SOAPProcessingException

      Fault SubCode contain only one mandatory Value child. This value child contains a QName
      Parameters:
        `value` -
      Throws:
        `SOAPProcessingException`

    - #### getValue

          SOAPFaultValue getValue()

      Get the `SOAPFaultValue` for this fault code or subcode. Note that for SOAP 1.1, the return value will always be `null`. Use `getValueAsQName()` as a SOAP version independent way to extract the value of a fault code or subcode.
      Returns:
        the `SOAPFaultValue` object or `null` if there is no `SOAPFaultValue`

    - #### setValue

          void setValue​(QName value)

      Set the value of this fault code or subcode. The effect of this method depends on the SOAP version. For SOAP 1.1, the method sets the text content of the `SOAPFaultCode` element. For SOAP 1.2, the method ensures that the `SOAPFaultCode` or `SOAPFaultSubCode` element has a child of type `SOAPFaultValue` child (creating one if necessary) and sets the text content of that child. In both cases, the method adds an appropriate namespace declaration if necessary.
      Parameters:
        `value` - the QName for the fault code or subcode value

    - #### getValueAsQName

          QName getValueAsQName()

      Get the value of this fault code or subcode. This method can be consistently used for all SOAP versions. For SOAP 1.1, it gets the text content of this element (which is necessarily a `SOAPFaultCode`) and resolves it as a `QName`. For SOAP 1.2, it locates the `SOAPFaultValue` child, extracts the text content from that element and resolves it as a `QName`.

      The method returns `null` if it fails to extract the value. Note that invalid SOAP faults are very common (especially with SOAP 1.1). Therefore the caller must be prepared to get a `null` value.

      Returns:
        the QName for the fault code or subcode value, or `null` if the value could not be determined

    - #### setSubCode

          void setSubCode​(SOAPFaultSubCode subCode)
                   throws SOAPProcessingException

      Fault SubCode can contain an optional SubCode
      Parameters:
        `subCode` -
      Throws:
        `SOAPProcessingException`

    - #### getSubCode

          SOAPFaultSubCode getSubCode()

      Returns:
        Returns SOAPFaultSubCode.