La possibilité d’activer HTTP/2 a été ajoutée dans la version 9 de WildFly.
Depuis WildFly 10.1
A partir de WildFly 10.1, il n’est plus nécessaire d’ajouter l’extension ALPN, même avec un JDK 8. Il suffit d’activer HTTP/2, ce qui est fait par défaut.
[host:9990 /] /subsystem=undertow/server=default-server/https-listener=https \
:write-attribute(name=enable-http2, value=true)
JDK 8, WildFly 9 ou 10.0
Tout d’abord, pour un JDK 8, il faut ajouter l’extension ALPN de Jetty dans le bootclasspath, en ajouter la ligne ci-dessous dans bin/standalone.conf.
JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:alpn-boot.jar"
Ensuite, il faut ajouter un listener HTTPS.
Enfin, on active HTTP/2 sur ce listener.
[host:9990 /] /subsystem=undertow/server=default-server/https-listener=https \
:write-attribute(name=enable-http2, value=true)
Versions d’Undertow
Pour connaitre les détails de la marche à suivre, il faut noter la version d’Undertow embarqué.
-
WildFly 8.2 ⇒ Undertow 1.1.8 (pas de HTTP/2)
-
WildFly 9.0 ⇒ Undertow 1.2.9 (HTTP/2 avec l’extension ALPN)
-
WildFly 10.0 ⇒ Undertow 1.3.15 (HTTP/2 avec l’extension ALPN)
-
WildFly 10.1 ⇒ Undertow 1.4.0 (HTTP/2 <b>sans</b> l’extension ALPN)
-
WildFly 11.0 ⇒ Undertow 1.4.xx (HTTP/2 <b>sans</b> l’extension ALPN)