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