compact2, compact3
javax.transaction.xa

## Class XAException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - javax.transaction.xa.XAException

- All Implemented Interfaces:
    Serializable

      public class XAException
      extends Exception

  The XAException is thrown by the Resource Manager (RM) to inform the Transaction Manager of an error encountered by the involved transaction.
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `int` | `errorCode` | The error code with which to create the SystemException.
    `static int` | `XA_HEURCOM` | The transaction branch has been heuristically committed.
    `static int` | `XA_HEURHAZ` | The transaction branch may have been heuristically completed.
    `static int` | `XA_HEURMIX` | The transaction branch has been heuristically committed and rolled back.
    `static int` | `XA_HEURRB` | The transaction branch has been heuristically rolled back.
    `static int` | `XA_NOMIGRATE` | Resumption must occur where the suspension occurred.
    `static int` | `XA_RBBASE` | The inclusive lower bound of the rollback codes.
    `static int` | `XA_RBCOMMFAIL` | Indicates that the rollback was caused by a communication failure.
    `static int` | `XA_RBDEADLOCK` | A deadlock was detected.
    `static int` | `XA_RBEND` | The inclusive upper bound of the rollback error code.
    `static int` | `XA_RBINTEGRITY` | A condition that violates the integrity of the resource was detected.
    `static int` | `XA_RBOTHER` | The resource manager rolled back the transaction branch for a reason not on this list.
    `static int` | `XA_RBPROTO` | A protocol error occurred in the resource manager.
    `static int` | `XA_RBROLLBACK` | Indicates that the rollback was caused by an unspecified reason.
    `static int` | `XA_RBTIMEOUT` | A transaction branch took too long.
    `static int` | `XA_RBTRANSIENT` | May retry the transaction branch.
    `static int` | `XA_RDONLY` | The transaction branch was read-only and has been committed.
    `static int` | `XA_RETRY` | Routine returned with no effect and may be reissued.
    `static int` | `XAER_ASYNC` | There is an asynchronous operation already outstanding.
    `static int` | `XAER_DUPID` | The XID already exists.
    `static int` | `XAER_INVAL` | Invalid arguments were given.
    `static int` | `XAER_NOTA` | The XID is not valid.
    `static int` | `XAER_OUTSIDE` | The resource manager is doing work outside a global transaction.
    `static int` | `XAER_PROTO` | Routine was invoked in an inproper context.
    `static int` | `XAER_RMERR` | A resource manager error has occurred in the transaction branch.
    `static int` | `XAER_RMFAIL` | Resource manager is unavailable.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `XAException()` | Create an XAException.
    `XAException(int errcode)` | Create an XAException with a given error code.
    `XAException(String s)` | Create an XAException with a given string.

  - ### Method Summary

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

      `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, 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

    - #### errorCode

          public int errorCode

      The error code with which to create the SystemException.

    - #### XA_RBBASE

          public static final int XA_RBBASE

      The inclusive lower bound of the rollback codes.
      See Also:
        Constant Field Values

    - #### XA_RBROLLBACK

          public static final int XA_RBROLLBACK

      Indicates that the rollback was caused by an unspecified reason.
      See Also:
        Constant Field Values

    - #### XA_RBCOMMFAIL

          public static final int XA_RBCOMMFAIL

      Indicates that the rollback was caused by a communication failure.
      See Also:
        Constant Field Values

    - #### XA_RBDEADLOCK

          public static final int XA_RBDEADLOCK

      A deadlock was detected.
      See Also:
        Constant Field Values

    - #### XA_RBINTEGRITY

          public static final int XA_RBINTEGRITY

      A condition that violates the integrity of the resource was detected.
      See Also:
        Constant Field Values

    - #### XA_RBOTHER

          public static final int XA_RBOTHER

      The resource manager rolled back the transaction branch for a reason not on this list.
      See Also:
        Constant Field Values

    - #### XA_RBPROTO

          public static final int XA_RBPROTO

      A protocol error occurred in the resource manager.
      See Also:
        Constant Field Values

    - #### XA_RBTIMEOUT

          public static final int XA_RBTIMEOUT

      A transaction branch took too long.
      See Also:
        Constant Field Values

    - #### XA_RBTRANSIENT

          public static final int XA_RBTRANSIENT

      May retry the transaction branch.
      See Also:
        Constant Field Values

    - #### XA_RBEND

          public static final int XA_RBEND

      The inclusive upper bound of the rollback error code.
      See Also:
        Constant Field Values

    - #### XA_NOMIGRATE

          public static final int XA_NOMIGRATE

      Resumption must occur where the suspension occurred.
      See Also:
        Constant Field Values

    - #### XA_HEURHAZ

          public static final int XA_HEURHAZ

      The transaction branch may have been heuristically completed.
      See Also:
        Constant Field Values

    - #### XA_HEURCOM

          public static final int XA_HEURCOM

      The transaction branch has been heuristically committed.
      See Also:
        Constant Field Values

    - #### XA_HEURRB

          public static final int XA_HEURRB

      The transaction branch has been heuristically rolled back.
      See Also:
        Constant Field Values

    - #### XA_HEURMIX

          public static final int XA_HEURMIX

      The transaction branch has been heuristically committed and rolled back.
      See Also:
        Constant Field Values

    - #### XA_RETRY

          public static final int XA_RETRY

      Routine returned with no effect and may be reissued.
      See Also:
        Constant Field Values

    - #### XA_RDONLY

          public static final int XA_RDONLY

      The transaction branch was read-only and has been committed.
      See Also:
        Constant Field Values

    - #### XAER_ASYNC

          public static final int XAER_ASYNC

      There is an asynchronous operation already outstanding.
      See Also:
        Constant Field Values

    - #### XAER_RMERR

          public static final int XAER_RMERR

      A resource manager error has occurred in the transaction branch.
      See Also:
        Constant Field Values

    - #### XAER_NOTA

          public static final int XAER_NOTA

      The XID is not valid.
      See Also:
        Constant Field Values

    - #### XAER_INVAL

          public static final int XAER_INVAL

      Invalid arguments were given.
      See Also:
        Constant Field Values

    - #### XAER_PROTO

          public static final int XAER_PROTO

      Routine was invoked in an inproper context.
      See Also:
        Constant Field Values

    - #### XAER_RMFAIL

          public static final int XAER_RMFAIL

      Resource manager is unavailable.
      See Also:
        Constant Field Values

    - #### XAER_DUPID

          public static final int XAER_DUPID

      The XID already exists.
      See Also:
        Constant Field Values

    - #### XAER_OUTSIDE

          public static final int XAER_OUTSIDE

      The resource manager is doing work outside a global transaction.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### XAException

          public XAException()

      Create an XAException.

    - #### XAException

          public XAException(String s)

      Create an XAException with a given string.
      Parameters:
        `s` - The `String` object containing the exception message.

    - #### XAException

          public XAException(int errcode)

      Create an XAException with a given error code.
      Parameters:
        `errcode` - The error code identifying the exception.

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.