# Class DOMException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
org.w3c.dom.DOMException

All Implemented Interfaces:
  `Serializable`

public class DOMException extends RuntimeException
DOM operations only raise exceptions in "exceptional" circumstances, i.e., when an operation is impossible to perform (either for logical reasons, because data is lost, or because the implementation has become unstable). In general, DOM methods return specific error values in ordinary processing situations, such as out-of-bound errors when using `NodeList`.

Implementations should raise other exceptions under other circumstances. For example, implementations should raise an implementation-dependent exception if a `null` argument is passed when `null` was not expected.

Some languages and object systems do not support the concept of exceptions. For such systems, error conditions may be indicated using native error reporting mechanisms. For some bindings, for example, methods may return error codes similar to those listed in the corresponding method descriptions.

See also the Document Object Model (DOM) Level 3 Core Specification.

Since:
  1.4, DOM Level 2
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `short`
  `code`
  `static final short`
  `DOMSTRING_SIZE_ERR`
  If the specified range of text does not fit into a `DOMString`.
  `static final short`
  `HIERARCHY_REQUEST_ERR`
  If any `Node` is inserted somewhere it doesn't belong.
  `static final short`
  `INDEX_SIZE_ERR`
  If index or size is negative, or greater than the allowed value.
  `static final short`
  `INUSE_ATTRIBUTE_ERR`
  If an attempt is made to add an attribute that is already in use elsewhere.
  `static final short`
  `INVALID_ACCESS_ERR`
  If a parameter or an operation is not supported by the underlying object.
  `static final short`
  `INVALID_CHARACTER_ERR`
  If an invalid or illegal character is specified, such as in an XML name.
  `static final short`
  `INVALID_MODIFICATION_ERR`
  If an attempt is made to modify the type of the underlying object.
  `static final short`
  `INVALID_STATE_ERR`
  If an attempt is made to use an object that is not, or is no longer, usable.
  `static final short`
  `NAMESPACE_ERR`
  If an attempt is made to create or change an object in a way which is incorrect with regard to namespaces.
  `static final short`
  `NO_DATA_ALLOWED_ERR`
  If data is specified for a `Node` which does not support data.
  `static final short`
  `NO_MODIFICATION_ALLOWED_ERR`
  If an attempt is made to modify an object where modifications are not allowed.
  `static final short`
  `NOT_FOUND_ERR`
  If an attempt is made to reference a `Node` in a context where it does not exist.
  `static final short`
  `NOT_SUPPORTED_ERR`
  If the implementation does not support the requested type of object or operation.
  `static final short`
  `SYNTAX_ERR`
  If an invalid or illegal string is specified.
  `static final short`
  `TYPE_MISMATCH_ERR`
  If the type of an object is incompatible with the expected type of the parameter associated to the object.
  `static final short`
  `VALIDATION_ERR`
  If a call to a method such as `insertBefore` or `removeChild` would make the `Node` invalid with respect to "partial validity", this exception would be raised and the operation would not be done.
  `static final short`
  `WRONG_DOCUMENT_ERR`
  If a `Node` is used in a different document than the one that created it (that doesn't support it).

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DOMException(short code, String message)`

- ## Method Summary

  ### Methods declared in class Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`
  Modifier and Type
  Method
  Description
  `final void`
  `addSuppressed(Throwable exception)`
  Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.
  `Throwable`
  `fillInStackTrace()`
  Fills in the execution stack trace.
  `Throwable`
  `getCause()`
  Returns the cause of this throwable or `null` if the cause is nonexistent or unknown.
  `String`
  `getLocalizedMessage()`
  Creates a localized description of this throwable.
  `String`
  `getMessage()`
  Returns the detail message string of this throwable.
  `StackTraceElement[]`
  `getStackTrace()`
  Provides programmatic access to the stack trace information printed by `Throwable.printStackTrace()`.
  `final Throwable[]`
  `getSuppressed()`
  Returns an array containing all of the exceptions that were suppressed, typically by the `try`-with-resources statement, in order to deliver this exception.
  `Throwable`
  `initCause(Throwable cause)`
  Initializes the cause of this throwable to the specified value.
  `void`
  `printStackTrace()`
  Prints this throwable and its backtrace to the standard error stream.
  `void`
  `printStackTrace(PrintStream s)`
  Prints this throwable and its backtrace to the specified print stream.
  `void`
  `printStackTrace(PrintWriter s)`
  Prints this throwable and its backtrace to the specified print writer.
  `void`
  `setStackTrace(StackTraceElement[] stackTrace)`
  Sets the stack trace elements that will be returned by `Throwable.getStackTrace()` and printed by `Throwable.printStackTrace()` and related methods.
  `String`
  `toString()`
  Returns a short description of this throwable.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Field Details

  - ### code

    public short code

  - ### INDEX_SIZE_ERR

    public static final short INDEX_SIZE_ERR
    If index or size is negative, or greater than the allowed value.
    See Also:
      - Constant Field Values

  - ### DOMSTRING_SIZE_ERR

    public static final short DOMSTRING_SIZE_ERR
    If the specified range of text does not fit into a `DOMString`.
    See Also:
      - Constant Field Values

  - ### HIERARCHY_REQUEST_ERR

    public static final short HIERARCHY_REQUEST_ERR
    If any `Node` is inserted somewhere it doesn't belong.
    See Also:
      - Constant Field Values

  - ### WRONG_DOCUMENT_ERR

    public static final short WRONG_DOCUMENT_ERR
    If a `Node` is used in a different document than the one that created it (that doesn't support it).
    See Also:
      - Constant Field Values

  - ### INVALID_CHARACTER_ERR

    public static final short INVALID_CHARACTER_ERR
    If an invalid or illegal character is specified, such as in an XML name.
    See Also:
      - Constant Field Values

  - ### NO_DATA_ALLOWED_ERR

    public static final short NO_DATA_ALLOWED_ERR
    If data is specified for a `Node` which does not support data.
    See Also:
      - Constant Field Values

  - ### NO_MODIFICATION_ALLOWED_ERR

    public static final short NO_MODIFICATION_ALLOWED_ERR
    If an attempt is made to modify an object where modifications are not allowed.
    See Also:
      - Constant Field Values

  - ### NOT_FOUND_ERR

    public static final short NOT_FOUND_ERR
    If an attempt is made to reference a `Node` in a context where it does not exist.
    See Also:
      - Constant Field Values

  - ### NOT_SUPPORTED_ERR

    public static final short NOT_SUPPORTED_ERR
    If the implementation does not support the requested type of object or operation.
    See Also:
      - Constant Field Values

  - ### INUSE_ATTRIBUTE_ERR

    public static final short INUSE_ATTRIBUTE_ERR
    If an attempt is made to add an attribute that is already in use elsewhere.
    See Also:
      - Constant Field Values

  - ### INVALID_STATE_ERR

    public static final short INVALID_STATE_ERR
    If an attempt is made to use an object that is not, or is no longer, usable.
    Since:
      1.4, DOM Level 2
    See Also:
      - Constant Field Values

  - ### SYNTAX_ERR

    public static final short SYNTAX_ERR
    If an invalid or illegal string is specified.
    Since:
      1.4, DOM Level 2
    See Also:
      - Constant Field Values

  - ### INVALID_MODIFICATION_ERR

    public static final short INVALID_MODIFICATION_ERR
    If an attempt is made to modify the type of the underlying object.
    Since:
      1.4, DOM Level 2
    See Also:
      - Constant Field Values

  - ### NAMESPACE_ERR

    public static final short NAMESPACE_ERR
    If an attempt is made to create or change an object in a way which is incorrect with regard to namespaces.
    Since:
      1.4, DOM Level 2
    See Also:
      - Constant Field Values

  - ### INVALID_ACCESS_ERR

    public static final short INVALID_ACCESS_ERR
    If a parameter or an operation is not supported by the underlying object.
    Since:
      1.4, DOM Level 2
    See Also:
      - Constant Field Values

  - ### VALIDATION_ERR

    public static final short VALIDATION_ERR
    If a call to a method such as `insertBefore` or `removeChild` would make the `Node` invalid with respect to "partial validity", this exception would be raised and the operation would not be done. This code is used in [DOM Level 3 Validation] . Refer to this specification for further information.
    Since:
      1.5, DOM Level 3
    See Also:
      - Constant Field Values

  - ### TYPE_MISMATCH_ERR

    public static final short TYPE_MISMATCH_ERR
    If the type of an object is incompatible with the expected type of the parameter associated to the object.
    Since:
      1.5, DOM Level 3
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### DOMException

    public DOMException(short code, String message)