3.7 Step 5: Create an XA Resource Manager
When using transactions in a Oracle Tuxedo CORBA application, you require to create a CORBA server process for the resource manager that interacts with a database on behalf of the Oracle Tuxedo CORBA application. The resource manager you use must conform to the X/OPEN XA specification and you require the following information about the resource manager:
- The name of the structure of type
xa_switch_t
that contains the name of the XA resource manager. - Flags indicating the capabilities of the XA resource manager and function pointers for the actual XA functions.
- The name of the object files that provide the services of the XA interface.
- The commands required to open and close the XA resource manager. This information is specified in the
OPENINFO
andCLOSEINFO
parameters in theUBBCONFIG
configuration file.
When integrating a new XA resource manager into the Oracle
Tuxedo system, the file $TUXDIR/udataobj/RM
must be
updated to include information about the XA resource manager. The
information is used to include the correct libraries for the XA
resource manager and to set up the interface between the
transaction manager and the XA resource manager automatically and
correctly. The format of this file is as follows:
rm_name :
rm_structure_name
:
library_names
where rm_name
is the name of the XA resource manager, rm_structure_name
is the name of the xa_switch_t
structure that defines the name of the XA resource manager, and library_names
is the list of the object files for the XA resource manager. White space (tabs and/or spaces) is allowed before and after each of the values and may be embedded within the library_names
. The colon (:) character may not be embedded within any of the values. Lines beginning with a pound sign (#) are treated as comments and are ignored.
Use the buildtms
command to build a server process
for the XA resource manager. The files that result from the
buildtms
command require to be installed in the
$TUXDIR/bin
directory.
For more information about the buildtms
command, see the Oracle Tuxedo Command Reference in the Oracle Tuxedo online documentation.
Parent topic: Developing Oracle Tuxedo CORBA Applications