我正在调用AWS API,我一直遇到以下错误

Exception in thread "main" com.amazonaws.AmazonClientException: Unable to execute HTTP request: java.security.cert.CertificateException: No X509TrustManager implementation available

at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:709)

at com.amazonaws.http.AmazonHttpClient.doExecute(AmazonHttpClient.java:449)

at com.amazonaws.http.AmazonHttpClient.executeWithTimer(AmazonHttpClient.java:411)

at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:360)

at com.amazonaws.services.kms.AWSKMSClient.doInvoke(AWSKMSClient.java:2723)

at com.amazonaws.services.kms.AWSKMSClient.invoke(AWSKMSClient.java:2693)

at com.amazonaws.services.kms.AWSKMSClient.generateDataKey(AWSKMSClient.java:1488)

at com.infor.aws.KMSTest.createDEK(KMSTest.java:217)

at com.infor.aws.KMSTest.main(KMSTest.java:144)

Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No X509TrustManager implementation available

at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)

at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)

at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)

at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)

at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509)

at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)

at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)

at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)

at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)

at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)

at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)

at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)

at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394)

at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353)

at com.amazonaws.http.conn.ssl.SdkTLSSocketFactory.connectSocket(SdkTLSSocketFactory.java:132)

at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:141)

at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.amazonaws.http.conn.ClientConnectionManagerFactory$Handler.invoke(ClientConnectionManagerFactory.java:76)

at com.amazonaws.http.conn.$Proxy2.connect(Unknown Source)

at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)

at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)

at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)

at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)

at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)

at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)

at com.amazonaws.http.apache.client.impl.SdkHttpClient.execute(SdkHttpClient.java:72)

at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:854)

at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:697)

... 8 more

Caused by: java.security.cert.CertificateException: No X509TrustManager implementation available

at sun.security.ssl.DummyX509TrustManager.checkServerTrusted(SSLContextImpl.java:1119)

at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491)

... 35 more

我在Stackoverflow上经历了多个线程,并添加了所有必需的truststore,truststoretype系统属性.这个thread我试过了.但没有任何工作.有人遇到过这个吗?我正在调用它,如下所示

TrustManagerFactory tmf = TrustManagerFactory

.getInstance(TrustManagerFactory.getDefaultAlgorithm());

KeyStore ks = KeyStore.getInstance("BCFKS");

ks.load(new FileInputStream("\\\\lib\\\\security\\\\cacerts"), "changeit".toCharArray());

tmf.init(ks);

// Get hold of the trust manager

X509TrustManager x509Tm = null;

for (TrustManager tm : tmf.getTrustManagers()) {

if (tm instanceof X509TrustManager) {

x509Tm = (X509TrustManager) tm;

break;

}

}

java https x509trustmanager,java – 没有X509TrustManager实现可用相关推荐

  1. java https soap,Java Https Soap Server(Tomcat-Axis2)

    1.%Tomcat%/server/server.xml 找到下面一段: 替换为: maxThreads="150" scheme="https" secure ...

  2. java https安全传输

    2012-09-14 HttpsURLConnection 扩展 HttpURLConnection,支持各种特定于 https 功能.此类使用 HostnameVerifier 和 SSLSocke ...

  3. java https post get请求_JAVA利用HttpClient进行POST和GET请求(HTTPS)

    目前,要为另一个项目提供接口,接口是用HTTP URL实现的,最初的想法是另一个项目用JQuery post进行请求. 但是,很可能另一个项目是部署在别的机器上,那么就存在跨域问题,而JQuery的p ...

  4. 【java】javac命令在win10不可用,提示javac不是内部或外部命令,也不是可运行的程序【解决方法】

    [java]javac命令在win10不可用,提示javac不是内部或外部命令,也不是可运行的程序[解决方法] 参考文章: (1)[java]javac命令在win10不可用,提示javac不是内部或 ...

  5. 1 sec on Large Judge (java): https://github.com/l...

    1 sec on Large Judge (java): https://github.com/leoyonn/leetcode/blob/master/src/q029_substring_of_a ...

  6. java https 网络爬虫_Java 网络爬虫,就是这么的简单

    这是 Java 网络爬虫系列文章的第一篇,如果你还不知道 Java 网络爬虫系列文章,请参看 学 Java 网络爬虫,需要哪些基础知识.第一篇是关于 Java 网络爬虫入门内容,在该篇中我们以采集虎扑 ...

  7. Java Https请求工具类

    个人技术网站 欢迎关注 由于微信API接口建议使用Https请求方式 而且过不久就废弃http请求方式了 所以提供以下Https工具类 public class SSLClient extends D ...

  8. Java https服务器证书认证问题解决方案

    Java https连接的"unable to find valid certification path to requested target","PKIX path ...

  9. java.lang.OutOfMemoryError: Java heap space错误及...

    为什么80%的码农都做不了架构师?>>>    以下是从网上找到的关于堆空间溢出的错误解决办法: java.lang.OutOfMemoryError: Java heap spac ...

最新文章

  1. 最近刷爆朋友圈的一道面试题
  2. Bzoj2957: 楼房重建
  3. Swift4 - 动态计算UITableView中tableHeaderView的高度 - 获取子控件高度和宽度
  4. hashcode 和 equals 的关系_Java equals 和 hashCode 的这几个问题可以说明白吗?
  5. spring+cxf调用webservice接口
  6. MySQL 高级 - 触发器 - 创建及应用
  7. 设一组初始记录关键字序列为(25,50,15,35,80,85,20,40,36,70)进行一趟归并后的结果为
  8. 关于Google Guava的几个问题
  9. Android P对dtbo分区
  10. 【java】Java实现单向链表反转
  11. 谈谈编程器软件开发与设计
  12. 泛微云桥任意文件读取漏洞复现[09/18]
  13. OpenJudge - 红与黑(DFS)
  14. 能否用一种语言来培养编程思维以及养成世界观
  15. 例如筋斗云的效果,但不通过offset定位的flag标记
  16. 如何解释vue的生命周期才能令面试官满意?
  17. 用搜狗输入法原样输出10的若干次方
  18. matlab 期权图,如何使用matlab计算期权价格
  19. matlab使用hough变换函数进行车道检测
  20. 202011 网络是通的,数据发不过去(接受不到)

热门文章

  1. matlab处理振动信号教程,振动信号预处理方法-平滑处理及其MATLAB实现
  2. 复旦大学-华盛顿大学EMBA校友:将"她力量"变成"我们的力量"
  3. Word在试图打开文件时遇到错误,请尝试下列方法:检查文档或驱动器的文件权限 确保有足够的内存和磁盘空间 用文本恢器打开文件
  4. 软件开发委托(个人)协议模版
  5. 这个5G网优工程师也太牛了!手机丢了,自己找回来了!
  6. 【转】systemtap原理及使用
  7. 朋友圈便携小空调链接和源码!
  8. js定时器实现右下角弹窗广告缓慢弹出
  9. 《比特彗星-教程》(编辑于2023.02.08)
  10. Android视频转换GIF图片Bitmap转GIF