Ich werte Jetty alpn-boot für OpenJDK 8, um Unterstützung für ALPN (und HTTP/2) hinzuzufügen. Das Problem ist jedoch, dass die JAR-Datei in den Boot-Klassenpfad gestellt werden muss, und ich kann nicht sicherstellen, dass sie für die Webanwendung in allen Umgebungen immer vorhanden ist (z. B. ein Server beim Kunden).Überprüfen, ob ALPN unterstützt wird
So würde ich einen Fallback-Mechanismus wie benötigen:
if (isAlpnSupported()) {
/* use HTTP/2 protocol */
} else {
/* fallback legacy code */
}
Kann ich überprüfen, ob ALPN, ohne dass eine tatsächliche Verbindung zu einem HTTP/2-Server unterstützt wird?
Das 'catch (Throwable x)' ist ein bisschen hässlich, aber ich habe die Idee, danke. – holmis83