Liberty features
CICS® supports features from Liberty enabling Java™ EE Web Profile applications to be deployed into a Liberty JVM server. All features in Table 1 relate to CICS integrated-mode Liberty but they are also supported in CICS standard-mode Liberty without any of the restrictions. In all modes, Java EE6 and Java EE7 are generally incompatible and should not used concurrently.
Liberty feature | Liberty feature description | Using this feature in CICS |
---|---|---|
appClientSupport-1.0 | Enables the Liberty server to process client modules and support remote client containers. |
Tip: The Application Client module runs in both the client and the server. The client
executes the client specific logic of the application. The other portion of code runs in a client
container on the server and communicates data from the business logic running on the server to the
client. For more information, see Preparing and running an application client.
|
Provides support for securing the server runtime environment and applications. appSecurity-2.0 supercedes appSecurity-1.0. | Configuring security for a Liberty JVM server | |
batch-1.0 | Enables support for the Java Batch 1.0 API specified by JSR-352. This feature does not support Java batch applications packaged in an Enterprise Bundle Archive (EBA). |
Restriction: DB2 type 2 is not supported for batch persistence.
|
batchManagement-1.0 | Provides managed batch support for the Java batch container. This includes the Batch REST management interface, job logging support, and a command line utility for external scheduler integration. | |
Provides an annotation based model for validating JavaBeans. | ||
blueprint-1.0 | Enables support for deploying OSGi applications that use the OSGi blueprint container specification. |
Restriction: The transaction attribute 'NotSupported' is not supported by a Liberty JVM
server.
|
concurrent-1.0 | Enables managed executors to be created, which then permit applications to submit tasks that can run concurrently. |
Restriction: The transaction property 'ManagedTask.SUSPEND' is not supported by a
Liberty JVM server.
Restriction: The user ID that is attached to the transaction of a new thread is always
the user ID that is attached to the parent transaction.
|
Provides a mechanism to inject components such as EJBs or Managed Beans into other components such as JSPs or EJBs. | ||
distributedMap-1.0 | Provides a local cache service which can be accessed through the DistributedMap API. | |
ejb-3.2 | Enables support for Enterprise JavaBeans written to the EJB 3.2 specification. | |
ejbHome-3.2 | Provides support for the EJB 2.x APIs. | |
Enables support for Enterprise JavaBeans written to the EJB Lite subset of the EJB specification. |
Restriction: The transaction attribute 'NotSupported' is not supported by a Liberty JVM
server.
|
|
ejbRemote-3.2 | Provides support for remote EJB interfaces. | |
el-3.0 | Enables support for the Enterprise Language (EL) 3.0 specification. | |
jacc-1.5 | Enables support for Java Authorization Contract for Containers (JACC) version 1.5. | Developing a Java Authorization Contract for Containers (JACC) Authorization Provider |
jaspic-1.1 | Java Authentication SPI for Containers (JASPIC) allows a Java EE Application Server to use custom authentication. JASPIC providers are defined in JSR-196. If a JASPIC provider and a TAI are configured in the same server, then the TAI will have no effect. JASPIC is a standard Java EE technology and therefore a more portable solution than a TAI for Java EE applications. | |
j2eeManagement-1.1 | Provides a set of interfaces to manage and monitor applications within the JEE application server. | |
javaMail-1.5 | Enables applications to utilize the JavaMail 1.5 API. | |
jaxb-2.2 | Provides support to map between Java classes and XML representations. | |
Provides support for the Java API for RESTful Web Services (JAX-RS) on Liberty. | ||
jaxws-2.2 | Provides support for SOAP web services. | |
jca-1.6 | Enables the configuration of resource adapters to access Enterprise Information Systems (EIS) from applications. |
Developing applications using the JCA programming interface
Restriction: the JCICS API, JDBC type 2 (DB2CONN), and MQ (MQCONN) capabilities are not
supported within threads created by the JCA API javax.resource.spi.BootstrapContext.createTimer().
Instead, for the same effect, use the concurrent APIs
(javax.enterprise.concurrent.ManagedScheduledExecutorService).This restriction applies to both
jca-1.6 and jca-1.7.
|
jcaInboundSecurity-1.0 | Allows JCA inbound resource adapters to flow security contexts by extending
the javax.resource.spi.work.SecurityContext abstract class. |
|
Enables the configuration of DataSources to access Databases from applications. | Auto-configuring a DB2 DataSource with type 2 connectivity through CICS using the jdbc-4.0 or jdbc-4.1 feature Note: The jdbc-4.0 and jdbc-4.1
implementations reside in the same DB2 JCC driver and are
mutually exclusive.
|
|
jms-1.1 | Enables the configuration of resource adapters to access messaging systems using the Java Message Service API. | Developing applications with Java Message Service (JMS) |
jmsMdb-3.1 | Enables the use of JMS Message-Driven Enterprise JavaBeans. MDBs allow asynchronous processing of messages within a Java EE component. | |
jndi-1.0 | Provides support for a single Java Naming and Directory Interface (JNDI) entry definition in the server configuration of Liberty. | |
Enables support for applications that use application-managed and container-managed JPA. |
Note: Using jpa-2.1, you might see the following exception in messages.log: Exception
Description: Server platform class is not valid: null. The exception can be ignored and it is
resolved by applying CICS APAR PI67640, when available. This APAR supplies fixpack 16.0.0.4 for
Liberty.
|
|
Provides support for web applications that use the JavaServer Faces (JSF) framework. | ||
json-1.0 | Provides access to the JavaScript Object Notation (JSON4J) library that provides a set of JSON handling classes for Java environments. | |
jsonp-1.0 | Supports the definition of a Java API to process JavaScript Object Notation. Including the support for the JSON parse, generate, transform, and query function. | |
Enables support for servlet and JavaServer Pages (JSP) applications. | Developing servlet and JSP applications | |
jta-1.1
jta-1.2 |
Supports the Java Transaction API (JTA).
Note: Java Transaction API is a protected Liberty feature.
|
Java Transaction API (JTA) |
jwt-1.0 | Allows runtime to create JWT tokens. | |
ldapRegistry-3.0 | Enables support for using an LDAP server as a user registry. Any server that supports LDAP Version 3.0 may be used. Multiple LDAP registries can be configured, and then federated to achieve a single logical registry view. | Configuring security for a Liberty JVM server by using distributed identity mapping |
localConnector-1.0 | Allows the use of a local JMX connector that is built into the JVM to access JMX resources in the server. | Java Management Extensions API (JMX) |
managedBeans-1.0 | Provides a common foundation for different Java EE components types that are managed by a container. Common services provided to Managed Beans include resource injection, lifecycle management and the use of interceptors. | |
mdb-3.1 | Enables the use of Message-Driven Enterprise JavaBeans. MDBs allow asynchronous processing of messages within a Java EE component. | |
mdb-3.2 | Enables the use of Message-Driven Enterprise JavaBeans written to the EJB 3.2 specification. MDBs allow asynchronous processing of messages within a Java EE component. | |
mongodb-2.0 | Provides support for the MongoDB Java Driver and allows remote database instances to be configured in the server configuration. Applications interact with these databases via the MongoDB APIs. | |
oauth-2.0 | Enables web applications to integrate OAuth 2.0 for authenticating and authorizing users. | Authorization using OAuth 2.0 |
openidConnectClient-1.0 | Enables web applications to integrate OpenID Connect Client 1.0 for authenticating users instead of, or in addition to, the configured user registry. | |
openidConnectServer-1.0 | Enables web applications to integrate OpenID Connect Server 1.0 for authenticating users instead of, or in addition to, the configured user registry. | |
microProfile-1.0 | Combines the Liberty features that support the Micro Profile for enterprise Java. | |
monitor-1.0 | Enables performance monitoring of the Liberty runtime components using a JMX client. | Java Management Extensions API (JMX) |
openidConnectClient-1.0 | Enables web applications to integrate OpenID Connect Client 1.0 for authenticating users instead of, or in addition to, the configured user registry. | |
openidConnectServer-1.0 | Enables web applications to integrate OpenID Connect Server 1.0 for authenticating users instead of, or in addition to, the configured user registry. | |
osgiConsole-1.0 | Enables an OSGi console to aid with debug of the runtime. | |
osgi.jpa-1.0 | This feature is superseded by the blueprint-1.0 and jpa-2.0 features that both include OSGi capability. When those features are both added to the server, this feature is added automatically. | |
restConnector-1.0 | Enables remote access by JMX clients via a REST-based connector and requires SSL and user security configuration. | Java Management Extensions API (JMX) |
Provides support for HTTP Servlets written to the Java Servlet specification. | Developing servlet and JSP applications | |
sessionDatabase-1.0 | Enables persistence of HTTP sessions to a datasource using JDBC. | |
ssl-1.0 | Provides support for Secure Sockets Layer (SSL) connections and SAF keyrings. | |
wab-1.0 | Provides support for web application bundles (WAB) that are inside enterprise bundles (EBA). | Creating an OSGi application project Note: The
wab-1.0 feature
is required by CICS and installed as part of
cicsts:core-1.0 and cicsts:standard-1.0 . |
wasJmsClient-1.1 | Provides applications with access to message queues hosted in Liberty through the JMS 1.1 API. | |
wasJmsSecurity-1.0 | Enables the WebSphere® Embedded Messaging Server to authenticate and authorize access from clients. | |
wasJmsServer-1.0 | Enables an embedded messaging server in the server. Applications can operate on messages in this engine by using the wasJmsClient feature. | |
webCache-1.0 | Enables local caching for web responses. It includes the distributedMap feature and performs automatic caching of web application responses to improve response times and throughput. | |
Provides a convenient combination of the Liberty features that are required to support the Java EE 6 and Java EE 7 Web Profiles. | ||
Enables a web browser or client application and a web server application to communicate by using one full duplex connection. |
For more information about the function in these features, see the documentation for WebSphere Application Server Liberty at Liberty profile overview. For details of Liberty restrictions, see Runtime environment known restrictions.
CICS also supplies a set of customized features unique to CICS JVM server environment. These support the integration of Liberty features with the CICS qualities of service.
CICS Feature | CICS Liberty mode | Description | Using this CICS feature |
---|---|---|---|
cicsts:core-1.0 | Integrated-mode only | Provides core CICS features, Java Transaction API (JTA) 1.0 and
wab-1.0 . |
|
cicsts:defaultApp-1.0 | Integrated-mode and standard-mode | Verifies that the Liberty server is running and provides information on the server configuration. Browse the JVM Profile, the JVM server logs, the Liberty server.xml, and the messages log by using the FileViewer servlet. | Configuring the CICS default web application |
cicsts:distributedIdentity-1.0 | Integrated-mode and standard-mode | Provides support for distributed identity mapping. | Configuring security for a Liberty JVM server by using distributed identity mapping |
cicsts:jcaLocalEci-1.0 | Integrated-mode only | Provides a locally optimized JCA ECI resource adapter for calling CICS programs. | Using the JCA local ECI resource adapter |
cicsts:jdbc-1.0 | Integrated-mode and standard-mode | Provides support for applications to access a local CICS DB2 database that uses JDBC. This feature has been superseded by jdbc-4.0 and jdbc-4.1, except when used directly with DriverManager. | Auto-configuring a DB2 DataSource with type 2 connectivity through CICS using the jdbc-4.0 or jdbc-4.1 feature |
cicsts:link-1.0 | Integrated-mode only | Provides support for running a Liberty application from an EXEC CICS LINK command in any CICS application program. | Invoking a Java EE application from a CICS program |
cicsts:security-1.0 | Integrated-mode and standard-mode | Provides integration of Liberty security with CICS security, including propagation of thread identity. | Configuring security for a Liberty JVM server |
cicsts:standard-1.0 | Standard-mode only | Enables users to port and deploy Liberty applications from other platforms to CICS without changing your application. Standard mode is ideal
for hosting applications that are written for and rely on the Java EE Full Platform, but do not require full integration with CICS. This feature includes wab-1.0 which is required by CICS. |
CICS standard-mode Liberty: Java EE 7 Full Platform support without full CICS integration |
cicsts:zosConnect-1.0
cicsts:zosConnect-2.0 |
Integrated-mode only | Integrates z/OS Connect with CICS Liberty JVM server. | Configuring z/OS Connect in CICS |
Liberty feature | Liberty feature description | Using this feature in CICS |
---|---|---|
enables the server to use the SAF Registry in the z/OS platform for authenticating users and authorizing access to applications |
Restriction: zosSecurity-1.0 is enabled by cicsts:security-1.0
|