You must enable the Liberty server
to receive inbound and outbound requests by using the optimized local adapters support. WebSphere® optimized local adapters (WOLA) for z/OS® are a set of callable services (APIs) that give native z/OS applications the ability to make inbound calls to
application server enterprise beans and enable native programs to act as a server and accept
requests from applications that run in the Liberty server.
Procedure
-
Allocate or select a load module library to contain the optimized local adapter load
modules.
This library is used by applications that are running outside the Liberty server. The library must be a PDS-E and
requires approximately 40 tracks (3390) to hold the optimized local adapter modules.
-
Copy the optimized local adapter load modules from wlp/clients/zos/* to
the load module library.
The following example shows how to copy load modules into the
$DSNAME data
set:
cp -Xv wlp/clients/zos/* "//'$DSNAME'"
-
To enable optimized local adapters support
on the Liberty server, configure the
zosLocalAdapters-1.0
feature in the server.xml file.
-
To enable the feature, add the
zosLocalAdapters-1.0
feature to the
server.xml file as shown in the following example.
<featureManager>
<feature>zosLocalAdapters-1.0</feature>
</featureManager>
-
Create a WOLA group by configuring a
zosLocalAdapters
element with a
three-part WOLA group name in the server.xml file.
The three-part WOLA group name is used by clients to connect to the
Liberty server. Each part of the group name must
be 1 to 8 alphanumeric characters.
Note: Do not use lowercase characters in the WOLA group name. The
z/OS security subsystem converts lowercase characters to
uppercase, which can cause a mismatch with your configuration.
You must take note of an
environment where WOLA is used by Liberty and by a traditional WebSphere Application Server. You
must ensure that the WOLA group name for the Liberty server (the first part of the three part WOLA
group name) is different than the Daemon group name configured for the traditional WebSphere
Application Server.
<zosLocalAdapters wolaGroup="LIB1" wolaName2="LIB2" wolaName3="LIB3"/>
-
Configure a connection factory by adding a
connectionFactory
element to the
server.xml file and specifying its properties in a
properties.ola
element.
<connectionFactory jndiName="eis/ola">
<properties.ola RegisterName="OLASERVER"/>
</connectionFactory>
- Create SERVER profiles for z/OS.
- Create SERVER profiles for the optimized local adapter authorized
service.
Use the following Time Sharing Option (TSO)
commands:
RDEF SERVER BBG.AUTHMOD.BBGZSAFM.LOCALCOM UACC(NONE)
PERMIT BBG.AUTHMOD.BBGZSAFM.LOCALCOM CLASS(SERVER) ACCESS(READ) ID(wlpuser1)
RDEF SERVER BBG.AUTHMOD.BBGZSAFM.WOLA UACC(NONE)
PERMIT BBG.AUTHMOD.BBGZSAFM.WOLA CLASS(SERVER)ACCESS(READ) ID(wlpuser1)
- Create a SERVER profile for the authorized client module BBGZSCFM and permit the
Started Task user ID of the Liberty server to
the profile. This action enables a Liberty
server to load the z/OS Authorized client services.
To enable a server that is running as
WLPUSER1 to access the
authorized client module:
RDEF SERVER BBG.AUTHMOD.BBGZSCFM UACC(NONE)
PERMIT BBG.AUTHMOD.BBGZSCFM CLASS(SERVER) ACCESS(READ) ID(wlpuser1)
- Create SERVER profiles for optimized local adapter authorized client
service.
Use the following TSO
commands:
RDEF SERVER BBG.AUTHMOD.BBGZSCFM.WOLA UACC(NONE)
PERMIT BBG.AUTHMOD.BBGZSCFM.WOLA CLASS(SERVER) ACCESS(READ) ID(wlpuser1)
- If you have CBIND enabled in System Authorization Facility (SAF), grant
access to the clients that will use optimized local adapters.
-
Define a profile for the Liberty server
in the CBIND class.
The profile name is
BBG.WOLA.<WOLA1>.<WOLA2>.<WOLA3>,
where WOLA1,WOLA2, and WOLA3 are the three
parts of the optimized adapter group name that are specified in the
<zosLocalAdapters>
element in the server.xml file. You can
define a profile by using the SAF RDEFINE TSO command.
For example, the following command creates a profile in the CBIND class for a WOLA group
named
LIB1.LIB2.LIB3:
RDEF CBIND BBG.WOLA.LIB1.LIB2.LIB3 UACC(NONE)
- Permit READ access to the profile.
For example, the following command
permits read access for the
username user name on the bbg.wola.lib1.lib2.lib3
profile:
PERMIT BBG.WOLA.LIB1.LIB2.LIB3 CLASS(CBIND) ACCESS(READ) ID(username)
You
can use asterisks to permit a user access to multiple profiles. The following example permits READ
access to the
username user for all profiles that start with
bbg.wola
in the CBIND class:
RDEF CBIND BBG.WOLA.* UACC(NONE)
PERMIT BBG.WOLA.* CLASS(CBIND) ACCESS(READ) ID(username)
For more information about SAF commands and syntax, see the documentation for your version of
z/OS.
Results
You can now deploy and start applications that use optimized local adapters on the Liberty server.
What to do next
Ensure that all external connections that use the optimized local adapters are running the latest
version of the optimized local adapters load module library. A client, such as a WOLA link server,
should use the program libraries from the most recent
Liberty installation that might connect to it.
Also, clients such as the WOLA link server are compatible with earlier releases of WOLA client
libraries, unless IBM® states otherwise.
- Ensure that the load module library is at the latest level.
- Ensure that the library is made available to all of the external address spaces that use the
optimized local adapters. For example, ensure that the library is available in the STEPLIB for batch
jobs, or in the DFHRPL concatenation for Customer Information Control System (CICS®).
If you want to use the optimized local adapters with CICS,
you must enable support for the adapters in CICS. For more
information, see Enabling support for Liberty optimized local adapters in CICS.
If you want to use the optimized local adapters with IMS,
you must enable support for the adapters in IMS. For more
information, see Enabling support for Liberty optimized local adapters in IMS.
If you want to create a connection, begin by registering the external address space to
the Liberty server. For more information, see
Registering an external address space with a local Liberty server using optimized local adapters.