Software AG Products 10.7 | Integrating On-Premises and Cloud Applications | Service Development | Building Services | About Automatic Service Retry | Configuring Service Retry
 
Configuring Service Retry
When configuring service retry, keep the following points in mind:
*You can configure retry attempts for flow services, Java services, and C services only.
*Only top-level services can be retried. That is, a service can be retried only when it is invoked directly by a client request. The service cannot be retried when it is invoked by another service (that is, when it is a nested service).
*If a service is invoked by a trigger (that is, the service is functioning as a trigger service), Integration Server uses the trigger retry properties instead of the service retry properties.
*Unlike webMethods Messaging Triggers, you cannot configure a service to retry until successful.
*To catch a transient error and re-throw it as an ISRuntimeException, the service must do one of the following:
*If the service is a flow service, the service must invoke pub.flow:throwExceptionForRetry. For more information about the pub.flow:throwExceptionForRetry, see the webMethods Integration Server Built-In Services Reference.
*If the service is written in Java, the service can use com.wm.app.b2b.server.ISRuntimeException ( ). For more information about constructing ISRuntimeExceptions in Java services, see webMethods Integration Server Java API Reference for the com.wm.app.b2b.server.ISRuntimeException class.
*The service retry period must be less than the maximum retry period. For more information, see About the Maximum Retry Period.
*To configure service retry
1. In Package Navigator view, open the service for which you want to configure service retry.
2. Under Transient error handling in the Properties view, in the Max retry attempts property, specify the number of times Integration Server should attempt to re-execute the service. The default is 0, which indicates that Integration Server does not attempt to re-execute the service.
3. In the Max interval property, specify the number of milliseconds Integration Server should wait between retry attempts. The default is 0 milliseconds, which indicates that Integration Server re-executes the service immediately.
4. Click File > Save.
Tip:
You can invoke the pub.flow:getRetryCount service to retrieve the current retry count and the maximum specified retry attempts. For more information about this service, see the webMethods Integration Server Built-In Services Reference. For more information about building a service that retries, see About Automatic Service Retry.