The dsp:commitTransaction tag completes the current transaction and, in so doing, causes all tasks encapsulated by the transaction to execute immediately. This tag tracks whether the transaction has completed successfully, and when not, saves a Throwable exception object.

This tag creates an EL variable that represents the transaction object, which later tags can reference and use to access the object’s success and exception properties.

Attributes

TagVariable:varorid(Required)

You must define an EL variable or scripting variable:

Attribute

Description

var

Names an EL variable. When you use var , you can set the scope attribute to page, request, session, and application, to specify the variable’s accessibility to other resources.

id

Names a scripting variable, which scriptlets and expressions can access at runtime.

VariableScope:scope

The scope attribute determines where the EL variable named by the var attribute is stored and what resources can access it. Options include: page, request, session, or application. Omitting this attribute causes the default, page, to be used.

Properties

success

The success property specifies the status of the transaction’s completion. A call to isSuccess returns true.

exception

The exception property identifies the Throwable exception object produced when the tasks associated with a transaction are not executed. A call to getException returns the exception object.

Example

<dsp:commitTransaction var="CommitXA"/>
 <c:choose>
      <c:when test="${CommitXA.success}">
        The transaction was committed successfully!<br/>
      </c:when>
      <c:otherwise>
         You have failed! Here's the exception:
           <c:out value="${CommitXA.exception}"/>
      </c:otherwise>
   </c:choose>

In this example, the tag causes a transaction to be committed. If the transaction is successfully committed, the message Congratulations! The transaction was committed successfully. is displayed. If the transaction fails to commit, the user sees the message The transaction was not committed because of this exception, followed by the exception.

 
loading table of contents...