Changes required to run ESP REST API with IBM Java 11
Release : 12.0
Component : ESP REST API
Here are the requirements:
#1 The minimum Java 11 version required is "June 9, 2022 - 11.0.15.0". It's listed as:
JVMJZBL1012I Java Virtual Machine created. Version information follows:
java version "11.0.15"
IBM Semeru Runtime Certified Edition for z/OS (build 11.0.15+10)
IBM J9 VM (build z/OS-Release-11.0.15.0-b01, JRE 11 z/OS s390x-64-Bit Compressed References 20220525_237 (JIT enabled, AOT enabled)
OpenJ9 - 1bbda91f21a
OMR - c1a5272bd7d
IBM - 1b0232b
JCL - cfaae8b7cba based on jdk-11.0.15+10)
#2 There must be IBMZSecurity cryptographic provider enabled in {JAVA_HOME}/conf/security/java.security
Reference: IBMZSecurity
#3 RESTOPTS member has to be partially updated:
LIBPATH Search:
# SET LIBPATH environment variable
LIBPATH=/lib:/usr/lib:"${JAVA_HOME}"/bin
LIBPATH="$LIBPATH":"${JAVA_HOME}"/lib
LIBPATH="$LIBPATH":"${JAVA_HOME}"/lib/j9vm
LIBPATH="$LIBPATH":.:"${ESPREST_HOME}"/lib
export LIBPATH="$LIBPATH":
Delete the following line as it is no longer needed in Java 11:
IJO="$IJO -Djava.protocol.handler.pkgs=com.ibm.crypto.provider"
#4 RESTPROP member update:
safkeyring:////user/keyring
to:
safkeyringjce:////user/keyring
#5 The IBM Java Batch Loader program name for Java 11 is 'EXEC PGM=JVMLDM16', so the STC JCL has to be updated too.
After this is done, REST API runs with Java 11 with TLS enabled using SAF Keyrings.
Migrating from earlier releases of IBM SDK, Java Technology Edition
There is also one recommendation from Readme file:
The z/OS MEMLIMIT parameter should be set to 1024 MB more than your expected Java heap size (-Xmx value).
A larger MEMLIMIT value might need to be set depending on your applications.