If you have a Java™ web
application running in a Liberty profile instance that accesses CICS® over a network, you can run
the application in a Liberty JVM server to optimize performance.
About this task
CICS supports a subset
of the features that are available in the Liberty profile. All of
the core web container API (such as JSP and servlet) are supported
along with many of the common Java EE
API and capabilities. For a list of supported features in CICS integrated-mode Liberty, see Liberty features.If your application uses security,
you can continue to use Liberty security features however without
further action it is possible that the CICS task
will run under transaction CJSA, URIMAP matching in CICS will not be available and any resource
access will be performed under the CICS default
userid. To better integrate your security solution with CICS, allowing your CICS tasks to run under the same userid as determined
by Liberty, see Authorizing users to run applications in a Liberty JVM server.
Procedure
- Update the application to use the JCICS API to access CICS services directly, ensuring
that the correct JCICS encoding is used when the application passes
data to and from CICS.
For more information about encoding, see
Data encoding.
This step only applies if you are using CICS integrated-mode
Liberty or CICS standard-mode
Liberty with the run as CICS API.
-
If you want to use CICS security for basic
authentication, update the security constraint in the web.xml file of the
dynamic web project to use a CICS role for authentication.
This step only applies if you are using CICS integrated-mode
Liberty or CICS standard-mode Liberty and submiting work to
the CICSExecutorService using the runAsCICS() method.
<auth-constraint>
<description>All authenticated users of my application</description>
<role-name>cicsAllAuthenticated</role-name>
</auth-constraint>
- Package the application as a WAR (Dynamic Web Project),
an EBA (OSGi application project) file or an EAR (Enterprise
Archive) file, in a CICS bundle.
CICS bundles are a unit
of deployment for an application. All CICS resources
in the bundle are dynamically installed and managed together. Create CICS bundle projects for application
components that you want to manage together.
- Deploy the CICS bundle
projects to zFS and install the CICS bundles
in the Liberty JVM server.
Results
The application is running in a JVM server.