Limitations for JRE versions in IBM App Connect Enterprise

Limitations apply to some message flow nodes and capabilities and to some types of security configuration when you use certain versions of the Java Runtime Environment (JRE) with IBM® App Connect Enterprise.

By default, integration servers use Java 17, which is provided with IBM App Connect Enterprise 13.0.1 and later versions. Java 8 is also supplied. You can configure each of your integration servers to use either of the supplied versions by using the ibmint specify jre command. Before you proceed, check whether any limitations apply to the message flow nodes in your deployed message flows or to the type of security that you configure:

  • The Change Data Capture node is not enabled for use with Java 8 in IBM App Connect Enterprise 13.0.1 or later versions. The Change Data Capture node is enabled for use with Java 17, which integration servers use by default.
  • The JavaCompute node is enabled for use with Java 17 in IBM App Connect Enterprise 13.0.1 and later versions, but you must test each node instance to confirm that it works before you use it in production.
  • The following message flow nodes, capabilities, and security methods are not enabled for use with Java 17 in IBM App Connect Enterprise 13.0.1 and later versions:
  • With Java 17, the TMPDIR environment variable is not observed by the JVM. Instead of using TMPDIR, you can use the _JAVA_OPTIONS environment variable to set the equivalent Java system variable java.io.tmpdir. For example:
    _JAVA_OPTIONS="-Djava.io.tmpdir=/apps/mqsi/javacache"
    Alternatively, you can set the Java system variable by setting the jvmSystemProperty in the server.conf.yaml or node.conf.yaml file:
    
    ResourceManagers:
      JVM:
        jvmSystemProperty:
    For more information, see JVM parameter values. For an independent integration server, you could use a startup script, as described in Configuring an independent integration server startup script.
  • For JSSE trace, the -Djavax.net.debug=true property is supported with Java 8, but it is not supported with Java 17. As an alternative, you can specify -Djavax.net.debug=all, which is supported with both Java 17 and Java 8.