Programming WebLogic JTA
Introduction and Roadmap
Document Scope and Audience
Guide to this Document
Related Documentation
Samples and Tutorials
Avitek Medical Records Application (MedRec) and Tutorials
New and Changed Features in This Release
Introducing Transactions
Overview of Transactions in WebLogic Server Applications
ACID Properties of Transactions
Supported Programming Model
Supported API Models
Distributed Transactions and the Two-Phase Commit Protocol
Support for Business Transactions
When to Use Transactions
What Happens During a Transaction
Transactions in WebLogic Server EJB Applications
Container-managed Transactions
Transactions in WebLogic Server RMI Applications
Transactions Sample Code
Transactions Sample EJB Code
Using JNDI to Return an Object Reference
Transactions Sample RMI Code
Using JNDI to Return an Object Reference to the UserTransaction Object
Configuring Transactions
Overview of Transaction Configuration
Configuring JTA
Unregister Resource Grace Period
Additional Attributes for Managing Transactions
Configuring Domains for Inter-Domain Transactions
Limitations for Inter-Domain Transactions
Configuring Communication Channels
Configuring Cross Domain Security
Cross Domain Security is Not Transitive
Adding Domains to the Exclude List Based on Transaction Participation
Important Considerations When Configuring Cross Domain Security
Configuring Security Interoperability Mode
Configuring Security Interoperability Mode
Configuring Domains for JNDI Lookups Requiring an Admin User
Configuring Domains for Intra-Domain Transactions
Transaction Log Files
Setting the Path for the Default Persistent Store
Setting the Default Persistent Store Synchronous Write Policy
Managing Transactions
Monitoring Transactions
Handling Heuristic Completions
Moving a Server
Abandoning Transactions
Transaction Recovery After a Server Fails
Transaction Recovery Service Actions After a Crash
Recovering Transactions For a Failed Non-Clustered Server
Recovering Transactions For a Failed Clustered Server
Manual Transaction Recovery Service Migration
What Occurs During Transaction Recovery Service Migration
Automatic Transaction Recovery Service Migration
Limitations of Migrating the Transaction Recovery Service
Preparing to Migrate the Transaction Recovery Service
Constraining the Servers to Which the Transaction Recovery Service Can Migrate
Viewing Current Owner of the Transaction Recovery Service
Manually Migrating the Transaction Recovery Service Back to the Original Server
Transaction Service
About the Transaction Service
Capabilities and Limitations
Lightweight Clients with Delegated Commit
Client-initiated Transactions
Transaction Integrity
Transaction Termination
Flat Transactions
Relationship of the Transaction Service to Transaction Processing
Multithreaded Transaction Client Support
Transaction Id
Transaction Name and Properties
Transaction Status
Transaction Statistics
General Constraints
Transaction Scope
Transaction Service in EJB Applications
Transaction Service in RMI Applications
Transaction Service Interoperating with OTS
Server-Server 2PC
Client Demarcated Transactions
Java Transaction API and Oracle WebLogic Extensions
JTA API Overview
Oracle WebLogic Extensions to JTA
Logging Last Resource Transaction Optimization
About the LLR Optimization Transaction Optimization
Logging Last Resource Processing Details
LLR Database Table Details
LLR Table Transaction Log Records
Failure and Recovery Processing for LLR
Coordinating Server Crash
JDBC Connection Failure
LLR Transaction Recover During Server Startup
Failover Considerations for LLR
Optimizing Performance with LLR
Optimizing Transaction Coordinator Location
Varied Performance for Read-Only Operations through an LLR Data Source
Transactions in EJB Applications
Before You Begin
General Guidelines
Transaction Attributes
About Transaction Attributes for EJBs
Transaction Attributes for Container-Managed Transactions
Transaction Attributes for Bean-Managed Transactions
Participating in a Transaction
Transaction Semantics
Transaction Semantics for Container-Managed Transactions
Transaction Semantics for Stateful Session Beans
Transaction Semantics for Stateless Session Beans
Transaction Semantics for Entity Beans
Transaction Semantics for Bean-Managed Transactions
Transaction Semantics for Stateful Session Beans
Transaction Semantics for Stateless Session Beans
Session Synchronization
Synchronization During Transactions
Setting Transaction Timeouts
Handling Exceptions in EJB Transactions
Transactions in RMI Applications
Before You Begin
General Guidelines
Using Third-Party JDBC XA Drivers with WebLogic Server
Overview of Third-Party XA Drivers
Table of Third-Party XA Drivers
Using Oracle Thin/XA Driver
Software Requirements for the Oracle Thin/XA Driver
Set the Environment for the Oracle Thin/XA Driver
Enable XA on the Database Server
Oracle Thin/XA Driver Configuration Properties
Using Sybase jConnect 5.5 and 6.0/XA Drivers
Configuring a Sybase Server for XA Support
XA and Sybase Adaptive Server
Execution Threads and Transactions in Sybase Adaptive Server
Setting the Timeout for Detached Transactions
Transaction Behavior on Sybase Adaptive Server
Configuration Properties for Java Clients
Known Sybase jConnect 5.5 and 6.0/XA Issues
Using Other Third-Party XA Drivers
Coordinating XAResources with the WebLogic Server Transaction Manager
Overview of Coordinating Distributed Transactions with Foreign XAResources
Registering an XAResource to Participate in Transactions
Enlisting and Delisting an XAResource in a Transaction
Standard Enlistment
Dynamic Enlistment
Static Enlistment
Commit processing
Recovery
Resource Health Monitoring
Java EE Connector Architecture Resource Adapter
Implementation Tips
Sharing the WebLogic Server Transaction Log
Transaction global properties
TxHelper.createXid
FAQs
Additional Documentation about JTA
Participating in Transactions Managed by a Third-Party Transaction Manager
Overview of Participating in Foreign-Managed Transactions
Importing Transactions with the Client Interposed Transaction Manager
Get the Client Interposed Transaction Manager
Get the XAResource from the Interposed Transaction Manager
Limitations of the Client Interposed Transaction Manager
Importing Transactions with the Server Interposed Transaction Manager
Get the Server Interposed Transaction Manager
Limitations of the Server Interposed Transaction Manager
Transaction Processing for Imported Transactions
Transaction Processing Limitations for Imported Transactions
Commit Processing for Imported Transactions
Recovery for Imported Transactions
Troubleshooting Transactions
Overview
Troubleshooting Tools
Exceptions
Transaction Identifier
Transaction Name and Properties
Transaction Status
Transaction Statistics
Transaction Monitoring
Debugging JTA Resources
Enable Debugging Using the Command Line
Enable Debugging Using the WebLogic Server Administration Console
Enable Debugging Using the WebLogic Scripting Tool
Changes to the config.xml File