Global transactions are managed and coordinated by the transaction manager, and can span multiple databases and processes. The transaction manager typically uses the XA protocol to interact with database back-ends. Global transactions occur using a two-phase commit from Encina, a transaction manager built into iPlanet Application Server. Local transactions involve access to a single database. They provide better application performance because they are less complex.
Local transactions are native to a single database and are restricted within a single process.
Global transactions can only be started declaratively through EJBs. By contrast, local transactions can only be executed programmatically, from either servlets, JSPs, or EJBs. Both the JDBC and iPlanet Application Server APIs rely on the Data Access Engine to interact with database drivers. There is also an ODBC driver. JTA is used for managing connections to a single database.