handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure Java发送请求握手失败问题解决
方法1
先在这个网站输入需要请求的URL:https://www.ssllabs.com/ssltest/index.html
能看到对方网站支持什么协议
在eclipse中的
Window - Preference - Tomcact/Resin - JDK - Optional Java VM arguments 中增加配置:
Dhttps.protocols=TLSv1.3,TLSv1.2,TLSv1.1,SSLv3,SSLv2Hello
方法2
【只适用于Java 1.8.0_151以前的版本】
下载(需要注册一个Oracle账号)
https://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
文件名叫:jce_policy-8.zip
下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt,
替换${java_home}/jre/lib/security/ 下面的local_policy.jar和US_export_policy.jar即可
方法3
【JDK1.8.0_151以后的版本】
修改${java_home}/jre/lib/security/ 这目录下的java.security文件
用管理员权限打开文件,修改第829行(将注释关闭,把#删去)
crypto.policy=unlimited
特别感谢:
https://blog.51cto.com/zpf666/2341494?source=dra