解决PKIX path building failed的问题以及示例
来源:互联网 发布:cat linux 指定行 编辑:程序博客网 时间:2024/06/07 21:52
这个是证书出问题了,服务器不信任我们自己创建的证书,所以在代码中必须要忽略证书信任问题。
解决方法:
第一步:首先创建一个SslUtil工具类,在里面做忽略证书信任操作:
import java.security.cert.CertificateException;import java.security.cert.X509Certificate;import javax.net.ssl.HostnameVerifier;import javax.net.ssl.HttpsURLConnection;import javax.net.ssl.SSLContext;import javax.net.ssl.SSLSession;import javax.net.ssl.TrustManager;import javax.net.ssl.X509TrustManager;public class SslUtil { private static void trustAllHttpsCertificates() throws Exception { TrustManager[] trustAllCerts = new TrustManager[1]; TrustManager tm = new miTM(); trustAllCerts[0] = tm; SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, trustAllCerts, null); HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); } static class miTM implements TrustManager,X509TrustManager { public X509Certificate[] getAcceptedIssuers() { return null; } public boolean isServerTrusted(X509Certificate[] certs) { return true; } public boolean isClientTrusted(X509Certificate[] certs) { return true; } public void checkServerTrusted(X509Certificate[] certs, String authType) throws CertificateException { return; } public void checkClientTrusted(X509Certificate[] certs, String authType) throws CertificateException { return; } } /** * 忽略HTTPS请求的SSL证书,必须在openConnection之前调用 * @throws Exception */ public static void ignoreSsl() throws Exception{ HostnameVerifier hv = new HostnameVerifier() { public boolean verify(String urlHostName, SSLSession session) { System.out.println("Warning: URL Host: " + urlHostName + " vs. " + session.getPeerHost()); return true; } }; trustAllHttpsCertificates(); HttpsURLConnection.setDefaultHostnameVerifier(hv); }}
示例代码:
String urlStr="测试网址";URL urlPost = null;urlPost = new URL(urlStr);if("https".equalsIgnoreCase(urlPost.getProtocol())){//判定网址是否信任,不信任则调用忽略信任工具类SslUtil SslUtil.ignoreSsl();}...//往下就是建立连接connection了
阅读全文
0 0
- 解决PKIX path building failed的问题以及示例
- 解决PKIX path building failed的问题
- 解决PKIX path building failed的问题-验证可以解决问题
- 解决PKIX path building failed的问题-验证可以解决问题
- PKIX path building failed 的问题
- PKIX path building failed 的问题
- PKIX path building failed 的问题
- 关于PKIX path building failed的问题
- 解决PKIX path building failed的问题unable to find valid certification path to requested target
- 解决PKIX path building failed的问题,忽略证书信任问题
- htmlparser解决PKIX path building failed问题的两种方法
- 解决PKIX path building failed的问题-验证可以解决问题 方法二
- PKIX path building failed
- PKIX path building failed
- Java#PKIX path building failed
- Java 信任所有SSL证书(解决PKIX path building failed问题)
- Java 信任所有SSL证书(解决PKIX path building failed问题)
- tomcat5.5.20 cas-PKIX path building failed:异常解决
- 继 博客园 服务器被攻击后,我司也出现这样问题
- d3d纹理过滤器配置
- 重装 11G(11.2.0.4) AMD组件
- 学习笔记_AngularJS
- nutz学习笔记
- 解决PKIX path building failed的问题以及示例
- HDU
- Netty:实现同步发送并接收消息的一种方式
- LaTex:Markdown数学公式录入
- c语言原生实现MD5 不含c++的任何api
- jQuery access()方法解析
- 欢迎使用CSDN-markdown编辑器
- .Net Core在X86上实现Interlocked.Increment(ref long)的方式
- FIDO协议(fast identity online,快速身份识别在线联盟)