JDK 17 ERR_SSL_PROTOCOL_ERROR 与 Chrome 和硒

JDK 17 ERR_SSL_PROTOCOL_ERROR with Chrome and Selenium

当我使用 selenium/standalone-chrome:97.0 运行 Selenium 测试时,我收到以下错误 JDK 17.

org.openqa.selenium.WebDriverException: unknown error: net::ERR_SSL_PROTOCOL_ERROR

我正在使用主机名(不是本地主机)访问网络应用程序。当我尝试使用具有相同配置的 JDK 16 时,我没有收到错误。

如果有人对此有任何见解,我们将不胜感激。 JDK17 中引入的某些 SSL 更改是否导致了此问题?

此问题的根本原因是我使用了带下划线 (_) 的主机名。我怀疑由于某些更改,JDK17 不支持带下划线的主机名(这在 JDK16 上运行良好)。

Caused by: java.lang.IllegalArgumentException: The encoded server name value is invalid
        at javax.net.ssl.SNIHostName.<init>(SNIHostName.java:179) ~[?:?]
        at sun.security.ssl.ServerNameExtension$CHServerNamesSpec.<init>(ServerNameExtension.java:131) ~[?:?]
        ... 30 more
Caused by: java.lang.IllegalArgumentException: Contains non-LDH ASCII characters
        at java.net.IDN.toASCIIInternal(IDN.java:297) ~[?:?]
        at java.net.IDN.toASCII(IDN.java:123) ~[?:?]
        at javax.net.ssl.SNIHostName.<init>(SNIHostName.java:175) ~[?:?]
        at sun.security.ssl.ServerNameExtension$CHServerNamesSpec.<init>(ServerNameExtension.java:131) ~[?:?]
        ... 30 more