Web services transaction processing technology derives its major concepts from proven transaction processing middleware concepts, such as the independent coordinator and shared context management. Web services transaction processing technology also defines new transaction protocols beyond those typically used in middleware systems, such as compensation-based and business process management protocols. New protocols are being added to existing protocols in order to better handle Web services applications such as SOA-enabled, long-running business processes over wide area networks.

As shown in Figure, the primary technology in Web services transactions is a coordinator (illustrated using the shaded ellipse), with which the root Web service (that is, the Web service initiating the transaction) registers and other participating Web services enroll for a given transaction protocol type. The root Web service invites other Web services to participate in a transaction by passing the transaction context in a SOAP header. (The coordinator provides the transaction context to the root Web service when the root Web service initiates the transaction so that the root and subsequently called Web services can use the context to register with the coordinator.)

Transactions register and enroll Web services within a coordinator.

Two major phases of execution characterize a Web services transaction:

  • Enrollment Starts with the first "begin" operation from a Web service to a coordinator to initiate a transaction and return a context, and continues for as long as it takes to enroll other Web services into the transaction.

  • Termination Starts when a Web service or a coordinator signals that the work being protected by the transaction is completed, and the transaction protocol is executed to determine the result of the activity.

Subsequent sections in this chapter describe the major concepts and protocols in more detail and summarize the major specifications, including the WS-Transactions family from IBM and Microsoft and the WS-Composite Application Framework family from OASIS.

     Python   SQL   Java   php   Perl 
     game development   web development   internet   *nix   graphics   hardware 
     telecommunications   C++ 
     Flash   Active Directory   Windows