About This Chapter
Some Preliminaries
The CSIMPAPP Tutorial
Step 1: Copy the CSIMPAPP Files
Step 2: Examine the Client Program
Step 3: Compile the Client
Step 4: Examine the Server
Step 5: Build the Server
Step 6: Edit the Configuration File
Step 7: Load the Configuration File
Step 8: Boot the Application
Step 9: Enter a Request
Step 10: Using tmadmin
Step 11: Shut Down the Application
Summary
Directory Structure for STOCKAPP
Files
Additional PATH Component for SunOS
A Look at STOCKAPP Client Programs
System Client Programs
BUY.cbl-A Request/response Client
Building Client Programs
References
A Look at STOCKAPP Servers
Service Definitions
Building Servers
Using the buildserver Command in the STOCKAPP
References
A Look at the STOCKAPP Makefile
Editing STOCKAPP.mk
Running STOCKAPP.mk
Configuration File for STOCKAPP
Notes to Listing 6-1
References
Loading the Configuration File
References
Executing tmboot
The Userlog: ULOG
References
Run the Application
Running the audit Client Program
Using tmadmin
Shutting STOCKAPP Down
References
Introduction
Client Processes
Basic Client Operation
Server Processes and Service Subroutines
Basic Server Operation
Servers as Requesters
The ATMI Calls
An Overview of X/Open's TX Interface
Typed Records
FML/VIEW Conversion
Environment Variables
Configuration File
The Bulletin Board
Introduction
Preliminaries
Client Naming
Unsolicited Notification
Security Strategy
The TPINFDEF-REC Record
Joining and Leaving an Application
Record Management
Typed Records for Messages
ATMI Record Calls
Service Calls
Sending Synchronous Messages: TPCALL
Sending Asynchronous Messages: TPACALL
Handling Unsolicited Notification
Compiling Client Programs
The buildclient Command
Writing Request/Response Services
Application Service Template
The TPSVCSTART Routine
The TPSVCDEF-REC Structure
Accessing Data that Comes with the Request
The TPRETURN and TPFORWAR Routines
Sending Replies
Forwarding Requests
Sending Unsolicited Messages
Advertising, Unadvertising Services
System-supplied Servers and Subroutines
System-Supplied Server: AUTHSVR
The BEA TUXEDO System Controlling Program
BEA TUXEDO System-Supplied Subroutines
Compiling Subroutines to Build Servers
The buildserver Command
Introduction
Conversational Mode
The Communications Handle
Record Management
Joining an Application
Ending a Conversation
Ending a Conversation: Summary
Events and Their Significance
Disorderly Disconnection
Request/Response Calls and Conversations
Configuration Parameters
Building Conversational Clients and Servers
Introduction
What Is a Global Transaction?
ATMI Transaction Primitives
Explicitly Defining a Global Transaction
Implicitly Defining a Global Transaction
Introduction
Communicating Errors
Values of TP-STATUS
Protocol Errors
BEA TUXEDO System Errors
Operating System Errors
Errors from Invalid Arguments
Other Possible Error Categories
Errors Leading to Abort
Heuristic Decision Errors
How to Deal with Errors
Fatal Transaction Errors
Time-out
Blocking vs. Transaction Time-out
Effect on TPCOMMIT
Effect of the TPNOTRAN Flag
Roles of TPRETURN and TPFORWAR
Service in Same Transaction as Caller
Service in Different Transaction with AUTOTRAN Set
Service Starts New Explicit Transaction
Transaction Rules
Communication Etiquette
BEA TUXEDO System-Supplied Subroutines
Leaving the Application
Global Transactions and Resource Managers
The Central Event Log
How the Log Is Named
What Log Entries Look Like
How to Write to the Event Log
Introduction
UNIX
Programming Consideration with UNIX Clients
DOS
Programming Considerations with MS-DOS Clients
Windows
Programming Considerations with the Windows DLL
OS/2
Programming Considerations with OS/2 Clients