Adapter Development Kit 9.12 | webMethods Adapter Development Kit Documentation | webMethods Adapter Development Kit Installation and User’s Documentation | Integration Server Transaction Support | Transaction Error Situations
 
Transaction Error Situations
When Integration Server encounters a situation that compromises the transactional integrity, it throws an error. Such situations include the following:
*A transaction includes a resource that only supports local transactions.
If a transaction accesses multiple resources, and more than one of the resources support local transactions only, then the integrity of the transaction cannot be guaranteed. For example, if the first resource successfully commits, and the second resource fails to commit, the first resource interaction cannot be rolled back; it has already been committed. To prevent this, Integration Server detects this case when connecting to more than one resource that does not support two-phase commits, and throws a runtime exception resulting in the failure of the service execution.
*A transactional or non-transactional resource is used in both a parent transaction and a nested transaction.
This situation is ambiguous, and most likely means that a nested transaction was not properly closed.
*A parent transaction is closed before its nested transaction.
*After a service request has invoked all its services, but before returning results to the caller, the service may commit its work. This commit could fail if the resource is unavailable or rejects the commit and causes the entire request to fail, and the transaction is rolled back.