A service must manage its own resources if:
- The application accesses files or databases (or both) in a transactional way, and contains transactional logic: that is, it includes COMMITs and ROLLBACKs
- The application uses a resource manager that we do not support in the
Enterprise Server environment; see the list in
Supplementary Information.
A service in which the application accesses files in a non-transactional way (that is, it does not includes COMMITs and ROLLBACKs), should be application managed.
A transactional application-managed service must contain all the transactional logic it needs, that is, it must complete with all resources either committed or rolled back.
Application-managed services are executed in a similar way to applications in a conventional execution environment such as
Enterprise Server or
Enterprise Server. One of the main differences is that the process is not terminated at the end of execution of the service.
A CICS
EXCI call can only be executed in a service that is Container Managed. An EXCI call executed in an Application Managed generates an abend:
EXIA