线程“main”javax中的java异常。ws。rs.ProcessingException:javax。网ssl。SSLProtocolException:握手警报:无法识别的\u名称
我是REST新手,最近我开发了一个小型JavaREST客户机,使用jersey使用SSL(https)上的api。但是,我面临以下错误的挑战:
线程“main”javax中出现异常。ws。rs.ProcessingException:javax。网ssl。SSLProtocolException:握手警报:无法识别的\u名称 ........ ........ 原因:javax。网ssl。SSLProtocolException:握手警报:无法识别的\u名称
我从一些帖子上读到关于在java中禁用SNI的内容,但我不清楚。 因为我使用的是EclispeIDE,所以我在eclipse中添加了“-djse.enableSNIExtension=false”。ini文件,但错误仍然出现。 谁能给我指出正确的方向吗
# 1 楼答案
确保您的CA证书文件包含您要连接的证书
下载并安装JCE for java 1.8(http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip)
卸下-djse。EnablesInExtension=false
# 2 楼答案
我意识到需要通过使用将安全上下文设置为“TLSv1”并使用TrustManager和HostnameVerifier(参见下面的代码片段)来处理异常(“javax.net.ssl.SSLProtocolException:握手警报:无法识别的_名称”)。这为我解决了这个问题