CORBA 2.3.3 Programmer's Guide for Java

Use of TMF
NSJTS uses the NonStop Transaction Management Facility, or TMF, for transaction management.
NSJTS serves in both superior and subordinate roles to TMF.
NSJTS and TMF communicate through a pseudo-file called a recoverable resource manager (RM) file.
They exchange signals through this file using the TMF APIs. These signals are used to start and
terminate transactions. The RM file is also used during the initialization of NSJTS to recover any
in-doubt transactions following a failure.
When an exception is initiated by TMF, NSJTS assigns the TMF error code to the CORBA exception
minor code.
Transaction Service Features Not Supported in
NonStop CORBA
The following features of the Transaction Service are not supported by NSJTS:
Nested transactions
Transactional dynamic invocation interface (DII) deferred synchronous requests
TransactionFactory interface (you should design applications to use the
org.omg.CosTransactions.Current interface)
Explicit propagation of transactions
TransactionalObject Interface
An application-defined interface that inherits from the TransactionalObject interface indicates
that any transactional context associated with the client thread should be associated with operations on
the object's interface.
Note
In the OMG Transaction Service version 1.2, use of the TransactionalObject interface is
deprecated in favor of POA policies.
Checked Transaction Behavior
In performing checked execution for transactions, NSJTS attempts to enforce the rule that only one
thread may remain active in a transaction at termination. This means that all other threads must have
suspended and that any references to Control, Coordinator, and Terminator object
implementations must have been released. Without these checks, some application work might not
actually complete within the transaction's boundaries.