XAException (Java SE 22 & JDK 22)
Description: declaration: module: java.transaction.xa, package: javax.transaction.xa, class: XAException
Keywords: javax.transaction.xa.XAException class

Module java.transaction.xa
Package 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.

Since:
  1.4
See Also:
  - Serialized Form

- ## Field Summary

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

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

  ### Methods declared in class java.lang.Object

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

- ## Field Details

  - ### 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 improper 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 Details

  - ### 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.