ALPN support

Application-Layer Protocol Negotiation Extension (ALPN) support allows HTTP/2 traffic to run over a secure connection.

Oracle Java™ SE Development Kit 8 and OpenJDK 8 do not support ALPN without the use of additional libraries. The IBM® SDK, Java Technology Edition, Version 8.0.5.15 and later includes ALPN support for the HTTP/2 protocol.

For ALPN support on Oracle Java SE Development Kit 8 and OpenJDK 8, at least two projects are available to acquire the additional JAR files for ALPN support. For both of these projects, match the correct version of the ALPN JAR with the version of the JDK 8 in use. The ALPN JAR version must be synchronized with the JDK 8 version.

Jetty ALPN support
After you download the Jetty ALPN JAR file, add the file to the bootclasspath property that the JVM startup command uses for the Liberty server. Use the -Xbootclasspath/p:path to alpn boot jar/alpn-boot-version.jar JVM option to add the Jetty ALPN JAR to the bootclasspath property. You can also add the -Xbootclasspath option to the jvm.options file that Liberty uses. For more information about Jetty ALPN support, see Application Layer Protocol Negotiation (ALPN).
Oracle Grizzly ALPN support
After you download the Grizzly ALPN JAR, add it to the bootclasspath property that the JVM startup command uses for the Liberty server. Use the -Xbootclasspath/p:path to alpn grizzly jar/grizzly-npn-bootstrap-version.jar JVM option to add the Grizzly ALPN JAR to the bootclasspath property. You can also add the -Xbootclasspath option to the jvm.options file that Liberty uses. For more information about Grizzly ALPN support, see the HTTP/2 Overview.
IBM SDK ALPN support
The IBM SDK, Java Technology Edition, Version 8.0.5.15 and later contains additional ALPN support. You do not need to download any additional JAR files or add any additional JVM options.

For more information about ALPN, see Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension.