|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The XASession
interface extends the capability of
Session
by adding access to a JMS provider's support for the
Java Transaction API (JTA) (optional). This support takes the form of a
javax.transaction.xa.XAResource
object. The functionality of
this object closely resembles that defined by the standard X/Open XA
Resource interface.
An application server controls the transactional assignment of an
XASession
by obtaining its XAResource
. It uses
the XAResource
to assign the session to a transaction, prepare
and commit work on the transaction, and so on.
An XAResource
provides some fairly sophisticated facilities
for interleaving work on multiple transactions, recovering a list of
transactions in progress, and so on. A JTA aware JMS provider must fully
implement this functionality. This could be done by using the services
of a database that supports XA, or a JMS provider may choose to implement
this functionality from scratch.
A client of the application server is given what it thinks is a
regular JMS Session
. Behind the scenes, the application server
controls the transaction management of the underlying
XASession
.
Session
Fields inherited from interface javax.jms.Session |
AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE |
Method Summary | |
void |
commit()
Throws a TransactionInProgressException , since it should
not be called for an XASession object. |
boolean |
getTransacted()
Indicates whether the session is in transacted mode. |
XAResource |
getXAResource()
Returns an XA resource to the caller. |
void |
rollback()
Throws a TransactionInProgressException , since it should
not be called for an XASession object. |
Methods inherited from interface javax.jms.Session |
close, createBytesMessage, createMapMessage, createMessage, createObjectMessage, createObjectMessage, createStreamMessage, createTextMessage, createTextMessage, getMessageListener, recover, run, setMessageListener |
Method Detail |
public XAResource getXAResource()
public boolean getTransacted() throws JMSException
getTransacted
in interface Session
JMSException
- if the JMS provider fails to return the
transaction mode due to some internal error.public void commit() throws JMSException
TransactionInProgressException
, since it should
not be called for an XASession
object.TransactionInProgressException
- if the method is called on
an XASession
.public void rollback() throws JMSException
TransactionInProgressException
, since it should
not be called for an XASession
object.TransactionInProgressException
- if the method is called on
an XASession
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |