diff --git a/http/src/main/java/com/arangodb/http/HttpConnection.java b/http/src/main/java/com/arangodb/http/HttpConnection.java index e2711921a..8fba46231 100644 --- a/http/src/main/java/com/arangodb/http/HttpConnection.java +++ b/http/src/main/java/com/arangodb/http/HttpConnection.java @@ -56,6 +56,7 @@ import javax.net.ssl.SSLContext; import java.security.NoSuchAlgorithmException; +import java.util.Collections; import java.util.Iterator; import java.util.Map.Entry; import java.util.Optional; @@ -143,6 +144,7 @@ private static String getUserAgent() { webClientOptions .setSsl(true) .setUseAlpn(true) + .setAlpnVersions(Collections.singletonList(httpVersion)) .setVerifyHost(config.getVerifyHost()) .setJdkSslEngineOptions(new JdkSSLEngineOptions() { @Override @@ -157,8 +159,13 @@ public SslContextFactory sslContextFactory() { true, null, IdentityCipherSuiteFilter.INSTANCE, - ApplicationProtocolConfig.DISABLED, - ClientAuth.NONE, + new ApplicationProtocolConfig( + ApplicationProtocolConfig.Protocol.ALPN, + ApplicationProtocolConfig.SelectorFailureBehavior.FATAL_ALERT, + ApplicationProtocolConfig.SelectedListenerFailureBehavior.FATAL_ALERT, + httpVersion.alpnName() + ), + ClientAuth.OPTIONAL, null, false );