Transaction Service

Transaction is the transaction processing engine for IOS. Transaction replaces the Application Gateway Service (AGS) from earlier releases of Lawson that performed similar functions but in a different way.

Transaction's main job is to communicate (through the Router servlet) between the requester (application user) and the Lawson Application Server (LATM). It does this by creating a message that converts the requested form data from XML into a format that is readable by the 4GL application. After the data has been updated by the 4GL application, Transaction converts the message back into XML. (Transaction output is always XML.)

When Transaction executes, it retains all form and data level security and other rules that have been applied to the form. It does this by making use of screen and transaction definitions that exist for each form. The screen definition describes the appearance of the screen. The transaction definition describes the processing that the form executes.

Transaction Execution Cycle

The diagram and text that follow show the sequence of events that occurs when a user application (for example, a user running a Lawson application in Lawson Portal) makes a request to Transaction.

Step # What is happening
1 Lawson Portal transforms the form information and user request into an outbound XML document. The XML document is wrapped in an HTTP request that is sent to Router.
2 Router decodes the inbound HTTP request and calls the Transaction service.
3 Transaction makes a call to the Java API.
4 The Java API interprets the XML call from Transaction and sends it to Lawson Application Server (LATM) to invoke the required application.
5 LATM either runs the application immediately (if the application has been run previously and is still in the application pool) or starts up the application, adds it to the pool, and runs it. LATM calls the Lawson run time system (LA-RTS).
6 LA-RTS takes over from IOS providing the runtime environment that the application needs (system services, application security, database access).
7 LA-RTS calls the Lawson Database Module (LADB) to establish a connection between LADB and the process—if this is the initial communication from the process for this transaction. For subsequent communication, the connection remains in place and communication is directly between LA-RTS and the RDBMS via the Lawson database driver.
8 LADB forwards the request to the database driver, which converts the call to the specific version of SQL used by the RDBMS. (Or, if the connection is already established, the database driver performs this step.)
9 The RDBMS responds to the request and initiates the return trip back to the user.
10 Transaction converts the data to XML and sends it back to the user's browser via HTTP.