Table of Contents Previous Next


Table of Contents

Introducing Transactions
Overview of Transactions in Oracle 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 Oracle Tuxedo CORBA Applications
How to Use Transactions When Using the Oracle 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 Oracle 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 Oracle Tuxedo CORBA Applications
UserTransaction API
UserTransaction Methods
Exceptions Thrown by UserTransaction Methods
Transactions in CORBA Server Applications
Integrating Transactions in an Oracle 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 Oracle 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 (Oracle 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 (Oracle Tuxedo CORBA Servers)
Changing the SERVICES Section (Oracle Tuxedo ATMI Servers)
Modifying the Domain Configuration File to Support Transactions (Oracle Tuxedo CORBA Servers)
Characteristics of the DMTLOGDEV, DMTLOGNAME, DMTLOGSIZE, MAXRDTRAN, and MAXTRAN Parameters
Characteristics of the AUTOTRAN and TRANTIME Parameters (Oracle Tuxedo CORBA and ATMI Servers)
Sample Distributed Application Using Transactions
RESOURCES Section
MACHINES Section
GROUPS and NETWORK Sections
SERVERS, SERVICES, and ROUTING Sections

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.