javax.net.ssl.SSLHandshakeException:握手期间远程主机关闭连接。重新启动服务器后,它工作正常,但会再次显示
在尝试使用TLSv1.2连接到端点时,我在weblogic应用程序日志中遇到此SSLHandshakeException。重新启动服务器后,我没有看到异常,它工作正常,但过了一段时间它会再次出现。 详情如下-javax.net.ssl.SSLHandshakeException:握手期间远程主机关闭连接。重新启动服务器后,它工作正常,但会再次显示,java,ssl,Java,Ssl,在尝试使用TLSv1.2连接到端点时,我在weblogic应用程序日志中遇到此SSLHandshakeException。重新启动服务器后,我没有看到异常,它工作正常,但过了一段时间它会再次出现。 详情如下- Java Version in weblogic servers : java version "1.7.0_80" Arguments in server start : -Dhttps.protocols=TLSv1.1,TLSv1.2 -Djdk.tls.client.protoco
Java Version in weblogic servers : java version "1.7.0_80"
Arguments in server start : -Dhttps.protocols=TLSv1.1,TLSv1.2 -Djdk.tls.client.protocols=TLSv1.1,TLSv1.2
Certificates are added in cacerts and trust.jks
Remote host is accepting only TLSv1.2
Property has been set : TLS_VERSION=TLSv1.2
请帮助我,如果您需要任何其他详细信息,请告诉我。您能显示详细的异常stacktrace吗?(1)@Manmohan_singh:stacktrace只显示我们使用的是握手代码,这可能没有帮助;OP:如果您可以使用sysprop
javax.net.debug=ssl运行,并捕获关于问题的输出,这可能会有所帮助,但可能会很大;或者尝试像tcpdump(2)jdk.tls.client.protocols
这样的网络捕获在j7中不存在,至少包括7u80在内的非付费j7<代码>https。协议
起作用,但仅当您的代码直接或通过库使用(https)URLConnection
时才起作用——您知道吗?您好@dave_thompson_085,如果我在服务器启动参数中启用调试ssl,我将不得不启动服务器来解决问题。还是让我查一下。我来自Ops团队,我需要与开发团队一起检查他们使用的代码。下面是HeaderType.classstub.setHeader(“java:com.comcast.types”,“RequestHeader”,header)中的代码;尝试{ApplicationLogger.info(“退出存根-设置SSLContext值”);String tlsVersion=this.prop.getProperty(“TLS_版本”);ApplicationLogger.info(“TLS版本:::”+tlsVersion);SSLContext ctx=SSLContext.getInstance(tlsVersion);ctx.init(null,null,null);SSLContext.setDefault(ctx);}
外部捕获,如tcpdump或wireshark,足以确定问题是版本(不是1.2)还是其他问题,这至少缩小了搜索或测试的范围。最好将代码添加到Q中,在Q中可以对其进行格式化,并且不会被清除删除;但是,根据进行连接的代码,更改默认上下文不一定会影响单个连接。