Adapter Development Kit 6.5 | webMethods Adapter Development Kit Documentation | webMethods Adapter Development Kit Installation and User’s Documentation | Run Time Activities | Retry and Recovery Architecture | Putting It All Together…
 
Putting It All Together…
The following diagram shows the interactions with an adapter during a typical adapter-service retry scenario.
The transient error condition is initially detected in the adapter service's execute method (step 2) whereupon the adapter throws an AdapterConnectionException (step 2.1). This resets the connection pool by destroying all idle connections immediately and any active connections as they return to the connection pool (step 3). Once the connection pool is reset, the error will be sent to the Integration Server service invocation logic as a retryable exception.
If so configured, and after an appropriate timeout period, the adapter service is once again invoked (beginning at step 4). Since the connection pool was emptied after the AdapterConnectionException, a new connection will be created for this service invocation (steps 5 and 6). If a transient error condition still exists, another AdapterConnectionException should be thrown from either the createManagedConnectionObject() or initializeConnection() call. In that event the pool will once again be reset (step 3) and the retry logic used again.