eclipse-ee4j / eclipse-ee4j/jersey

Jetty-Connector No Client EndPointIdentificationAlgorithm

Open
#4,049 0 comments 0 reactions 0 assignees View on GitHub
Component: connectors connectors
Dominant language
Java
Stars
730
Forks
382
PR merge metrics
No merged PRs in 30d

Description

We're using KumuluzEE (3.1.0) as our server, which in turn uses Jetty (9.4.14) and Jersey (2.27).
When using the Jax-RS-Client to make a simple HEAD request like

`ClientBuilder.newClient().target('https://google.com').request().head();`

Jetty spills out the following warning:

> org.eclipse.jetty.util.ssl.SslContextFactory -- No Client EndPointIdentificationAlgorithm configured for SslContextFactory@5eccfb4b[provider=null,keyStore=null,trustStore=null]

Which it does, when the org.eclipse.jetty.util.ssl.SslContextFactory._endpointIdentificationAlgorithm is null.
The corresponding adapter code is in org.glassfish.jersey.jetty.connector.JettyConnector:

```
Boolean enableHostnameVerification = (Boolean) config.getProperties()
.get(JettyClientProperties.ENABLE_SSL_HOSTNAME_VERIFICATION);

if (enableHostnameVerification != null && enableHostnameVerification) {
sslContextFactory.setEndpointIdentificationAlgorithm("https");
}
```
So essentially if this setting is absent, it is treated as false. However the javadoc in org.glassfish.jersey.jetty.connector.JettyClientProperties state:

> If the property is absent the default value is {[at]code true}

Which kind of makes me feel, that the absent property case is not treated the right way.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.