For z/OS platforms

Optimized local adapters on Liberty for z/OS

Optimized local adapters support on Liberty for z/OS® consists of a set of callable services and a Java™ EE Connector Architecture (JCA) 1.5 resource adapter. The services and adapter work together to provide high-performance calling between native-language applications on z/OS and business logic in a Liberty server environment.

You can use WebSphere® optimized local adapters (WOLA) to make inbound calls to applications that are deployed on Liberty from an external address space. You can also use optimized local adapters to make outbound calls from Liberty applications to applications that are running in an external address space on the same z/OS system.

With this support, existing z/OS applications that are written in Cobol, PL/I, C, C++, and assembly language can achieve high performance and efficient integration with Java applications that are deployed on the Liberty server on the same z/OS system.

Optimized local adapters also provide close integration of qualities of service (QoS), including support for fast thread-level security propagation and assertion between the API-exploiting external address spaces and the Liberty server. Support is provided for using the adapters APIs in the following environments:
  • Customer Information Control System (CICS®)
  • Information Management System (IMS)
  • UNIX System Services
  • Batch processing

A task-related user exit (TRUE) program is provided to support the optimized local adapters under CICS.

Benefits of using optimized local adapters

Performance improvement
You can achieve significant performance characteristics when you use the optimized local adapters APIs to call into applications that are deployed on a Liberty server from local batch and UNIX System Services, and CICS applications. The ability to pass parameter data using binary techniques provides a large part of the performance improvement. The transport-level support that the adapters provide uses z/OS cross-memory services to optimize the performance of calls to applications that are deployed on a locally accessible Liberty server.
Identity context propagation
For inbound requests to the Liberty server using the optimized local adapters APIs, the user ID on the existing z/OS thread is always propagated and asserted in the Liberty EJB container. For calls from CICS, you can extend this propagation by specifying a registration option that propagates and asserts the identity of the CICS task-level user. For calls from Liberty applications, you can propagate and assert identity under CICS using the optimized local adapters CICS link server. You can control this behavior by specifying a flag on the Register API.
Local binding support
Optimized local adapters can provide a high-performance local binding for existing applications, middleware, and subsystems on z/OS platforms. If there is a local Liberty server available, these local bindings are used with current programming interfaces.
Gateway or proxy for legacy assets on z/OS systems

Optimized local adapters provide the basis for you to use the Liberty stack as an easily accessible set of capabilities. These capabilities extend the life of application assets that might be difficult to replace. When you use an enterprise bean as a proxy, any Cobol, assembly language, or C/C++ application that is deployed on a z/OS system can easily become a web services client or a Web 2.0 application requester that reaches a set of web applications that are within reach of your locally running application server.

Using the Liberty outbound APIs, any Cobol, assembly language, or C/C++ application can be presented to the Liberty server as a callable service. You can then deploy a provider web services application in the local Liberty server that accepts requests as a gateway for this backend service. In this scenario, the JCA 1.5 programming model sends requests to the application, receives responses from it, and sends back responses to the web-based caller.