最近,我从finagle-core 22.4.0升级到21.4.0,并在应用程序中加载集成测试时看到了这一点。我使用wiremock独立版本的2.27.2。Netty版本是4.1.73.Final。我怎样才能解决这个问题?我假设它与某些版本有关。但是从哪里开始调试呢?
09:41:03.529 WARN finagle/netty4-2-1 io.netty.channel.ChannelInitializer [] [] [] [] [] [] [] [] [] [] [] Failed to initialize a channel. Closing: [id: 0x6e98560c]
com.twitter.finagle.ssl.SslConfigurationException: java.lang.IllegalArgumentException: ApplicationProtocols.Supported is not supported at this time for SslContextClientEngineFactory. Remote Info: Not Available
at com.twitter.finagle.ssl.SslConfigurationException$.notSupported(SslConfigurationException.scala:18)
at com.twitter.finagle.ssl.SslConfigurations$.checkApplicationProtocolsNotSupported(SslConfigurations.scala:246)
at com.twitter.finagle.ssl.client.SslContextClientEngineFactory.apply(SslContextClientEngineFactory.scala:37)发布于 2022-05-14 13:18:51
这里也报道过类似的问题:https://github.com/twitter/finagle/issues/913
在安装安全套接字(SSL/TLS)连接期间,您将从finagle获得“不支持的应用程序协议”异常。
github发出链接到以下代码,显示支持的应用程序协议:https://github.com/twitter/finagle/blob/develop/finagle-core/src/main/scala/com/twitter/finagle/ssl/ApplicationProtocols.scala#L19-L31
private val alpnProtocolIds: Set[String] = Set(
"http/1.1",
"spdy/1",
"spdy/2",
"spdy/3",
"stun.turn",
"stun.nat-discovery",
"h2",
"h2c",
"webrtc",
"c-webrtc",
"ftp"
)这可能意味着,例如,您的测试现在正在尝试与不受支持的HTTP2通信。您可能必须将其配置为HTTP1.1
如果这没有帮助,可以尝试使用以下vm选项调试完整的SSL通信:
-Djavax.net.debug=all
详情见:
https://stackoverflow.com/questions/72226122
复制相似问题