Transaction Control

SOAP/AM Server Development > Implementing a Web Service > Using the Service Definition Wizard >

Transaction Control

Previous pageReturn to chapter overviewNext page

Use this page to indicate how transaction state will be managed for the method. SOAP/AM Server allows transaction state to be managed by a Web service client application or the SOAP/AM Server. When the SOAP/AM Server controls the transaction, it uses the settings specified in the SDF to determine when to commit or abort the transaction. When a Web service client controls the transaction, it includes information in the SOAP request that dictates if the SOAP/AM Server should continue, commit or abort the transaction. If you allow either party to control the transaction, the client controls it only if it supplies the control information, otherwise the SOAP/AM Server controls it.

 

Allowing the SOAP/AM Server to control the transaction hides the details of the transaction from the client application. However, when the Server controls the transaction, the transaction can consist of only a single method invocation. When a Web service client controls the transaction, the transaction can encompass multiple method invocations.

 

Allow the SOAP/AM Server to manage the transaction state

 

Check this option to allow SOAP/AM server to manage the transaction. You may also specify a transaction timeout in seconds, and a range of reply codes that will indicate a successful transaction. The reply code is the value contained in the first 2-byte word (signed integer) of the server's reply interprocess message. The range value is a comma-separated list of ranges where range is 'lo:hi' and lo and hi are integers in the range -32768 to 32767. "*" may be used to represent the entire range.

 

For example, suppose you enter a range of "0,100:512". At run-time, a server reply code that equals zero or is between 100 and 512 (inclusive) would be considered a "success" and SOAP/AM Server would commit the transaction. If the server reply code fell outside of the specified range, SOAP/AM Server would abort the transaction.

 

Allow the SOAP client to manage the transaction state

 

Check this option to allow the client to manage the transaction state using a <txControl> element as a SOAP header or parameter. Refer to Managing Transactions for more information on using the txControl element. If both client and server are allowed to control the transaction and the client does not send a <txControl> element, the server will control the transaction.