compact1, compact2, compact3
java.io

## Class WriteAbortedException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.io.IOException
      - - java.io.ObjectStreamException
        - - java.io.WriteAbortedException

- All Implemented Interfaces:
    Serializable

      public class WriteAbortedException
      extends ObjectStreamException

  Signals that one of the ObjectStreamExceptions was thrown during a write operation. Thrown during a read operation when one of the ObjectStreamExceptions was thrown during a write operation. The exception that terminated the write can be found in the detail field. The stream is reset to it's initial state and all references to objects already deserialized are discarded.

  As of release 1.4, this exception has been retrofitted to conform to the general purpose exception-chaining mechanism. The "exception causing the abort" that is provided at construction time and accessed via the public `detail` field is now known as the cause, and may be accessed via the `Throwable.getCause()` method, as well as the aforementioned "legacy field."

  Since:
    JDK1.1
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `Exception` | `detail` | Exception that was caught while writing the ObjectStream.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `WriteAbortedException(String s, Exception ex)` | Constructs a WriteAbortedException with a string describing the exception and the exception causing the abort.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Throwable` | `getCause()` | Returns the exception that terminated the operation (the cause).
    `String` | `getMessage()` | Produce the message and include the message from the nested exception, if there is one.

    - ### Methods inherited from class java.lang.Throwable

      `addSuppressed, fillInStackTrace, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### detail

          public Exception detail

      Exception that was caught while writing the ObjectStream.

      This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.

  - ### Constructor Detail

    - #### WriteAbortedException

          public WriteAbortedException(String s,
                                       Exception ex)

      Constructs a WriteAbortedException with a string describing the exception and the exception causing the abort.
      Parameters:
        `s` - String describing the exception.
        `ex` - Exception causing the abort.

  - ### Method Detail

    - #### getMessage

          public String getMessage()

      Produce the message and include the message from the nested exception, if there is one.
      Overrides:
        `getMessage` in class `Throwable`
      Returns:
        the detail message string of this `Throwable` instance (which may be `null`).

    - #### getCause

          public Throwable getCause()

      Returns the exception that terminated the operation (the cause).
      Overrides:
        `getCause` in class `Throwable`
      Returns:
        the exception that terminated the operation (the cause), which may be null.
      Since:
        1.4

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.