Using CORBA Transactions

     Previous  Next    Contents  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Introducing Transactions

Overview of Transactions in BEA Tuxedo CORBA Applications

ACID Properties of Transactions

Resource Manager

Supported Programming Model

Supported API Model

Support for Business Transactions

Distributed Transactions and the Two-Phase Commit Protocol

When to Use Transactions

How to Use Transactions in BEA Tuxedo CORBA Applications

How to Use Transactions When Using the BEA Bootstrapping Mechanism

How to Use Transactions When Using the INS Bootstrapping Mechanism

Writing a Transactions Sample Application

Workflow for the Transactions Sample Application

Development Steps

Step 1: Writing the OMG IDL

Step 2: Defining Transaction Policies for the Interfaces

Step 3: Writing the Server Application

Step 4: Writing the Client Application

Step 5: Creating a Configuration File

Transaction Service

About the Transaction Service

Capabilities and Limitations

Lightweight Clients with Delegated Commit

Support for Third-Party Clients Using INS

Multithreaded Transaction Client Support

Transaction Propagation (CORBA Only)

Transaction Integrity

Transaction Termination

Flat Transactions

Interoperability Between CORBA Remote Clients and the BEA Tuxedo Domain

Intradomain and Interdomain Interoperability

Network Interoperability

Relationship of the Transaction Service to Transaction Processing

Process Failure

General Constraints

Transaction Service in CORBA Applications

Getting Initial References to the TransactionCurrent Object Using the Bootstrap Object

Getting Initial References to the TransactionFactory Object Using INS

CORBA Transaction Service API

Data Types

Exceptions

Current Interface

Control Interface

Terminator Interface

TransactionalObject Interface

TransactionFactory Interface

Other CORBAservices Object Transaction Service Interfaces

CORBA Transaction Service API Extensions

Exception

TransactionCurrent Interface

Notes on Using Transactions in BEA Tuxedo CORBA Applications

UserTransaction API

UserTransaction Methods

Exceptions Thrown by UserTransaction Methods

Transactions in CORBA Server Applications

Integrating Transactions in a BEA Tuxedo Client and Server Application

Transaction Support in CORBA Applications

Making an Object Automatically Transactional

Enabling an Object to Participate in a Transaction

Preventing an Object from Being Invoked While a Transaction Is Scoped

Excluding an Object from an Ongoing Transaction

Assigning Policies

Using an XA Resource Manager

Opening an XA Resource Manager

Closing an XA Resource Manager

Transactions and Object State Management

Delegating Object State Management to an XA Resource Manager

Waiting Until Transaction Work Is Complete Before Writing to the Database

When to Assign the Transaction Activation Policy

Transaction Policies to Use with the Transaction Activation Policy

User-defined Exceptions

About User-defined Exceptions

Defining the Exception

Throwing the Exception

How the Transactions University Sample Application Works

About the Transactions University Sample Application

Transactional Model Used by the Transactions University Sample Application

Object State Considerations for the University Server Application

Object Policies Defined for the Registrar Object

Object Policies Defined for the RegistrarFactory Object

Using an XA Resource Manager in the Transactions Sample Application

Configuration Requirements for the Transactions Sample Application

Transactions in CORBA Client Applications

Overview of BEA Tuxedo CORBA Transactions

Summary of the Development Process for Transactions

Step 1: Using the Bootstrap Object to Obtain the TransactionCurrent Object

C++ Example

JStep 2: Using the TransactionCurrent Methods

C++ Example

Administering Transactions

Modifying the UBBCONFIG File to Accommodate Transactions

Summary of Steps

Step 1: Specify Application-wide Transactions in the RESOURCES Section

Step 2: Create a Transaction Log (TLOG)

Creating the UDL

Defining Transaction-related Parameters in the MACHINES Section

Creating the Domains Transaction Log (BEA Tuxedo ATMI Servers Only)

Step 3: Define Each Resource Manager (RM) and the Transaction Manager Server in the GROUPS Section

Sample GROUPS Section

Characteristics of the TMSNAME, TMSCOUNT, OPENINFO, and CLOSEINFO Parameters

Step 4: Enable an Interface to Begin a Transaction

Changing the INTERFACES Section (BEA Tuxedo CORBA Servers)

Changing the SERVICES Section (BEA Tuxedo ATMI Servers)

Modifying the Domain Configuration File to Support Transactions (BEA Tuxedo CORBA Servers)

Characteristics of the DMTLOGDEV, DMTLOGNAME, DMTLOGSIZE, MAXRDTRAN, and MAXTRAN Parameters

Characteristics of the AUTOTRAN and TRANTIME Parameters (BEA Tuxedo CORBA and ATMI Servers)

Sample Distributed Application Using Transactions

RESOURCES Section

MACHINES Section

GROUPS and NETWORK Sections

SERVERS, SERVICES, and ROUTING Sections


  Back to Top       Previous  Next