https正在成为主流,http估计在不久的将来会被彻底放弃……

一个Java程序需要访问一个https的网站的时候,可能需要涉及证书的安装,卸载等操作。

一、证书的下载

打开浏览器输入https://的网站,如果没有相关证书,可以根据提示从浏览器中下载下来,一般保存为*.cer文件。

二、证书的安装

. 将步骤一的*.cer文件拷贝到"%JAVA_HOME%\jre\lib\security\cacerts"路径下
. keytool -import -keystore cacerts -storepass changeit -keypass changeit -alias my-cas -file *.cer证书的绝对位置

三、证书的查看

keytool -list -v -alias my-cas -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -storepass changeit -keypass changeit

四、证书的删除

keytool -delete -v -alias my-cas -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -storepass changeit -keypass changeit

五、一个错误

发布并运行一个WEB项目,登录SSL系统时得到这个错误信息:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

六、解决过程及结论

1. 所有搜索到的结论都是【没有正确的安装证书】。

2. 可是我用步骤三显示并证明了已经正确的安装了证书。

3. 灵光一现,会不会是JDK不兼容?已经确认证书由JDK1.7生成,我当前的环境是JDK1.8。

4. 安装了一个JDK1.7,然后发现Eclipse Neon(4.6.2)不支持JDK1.7。

5. 下载了Eclipse Mars(4.5.2),项目运行成功了!

6. 似乎得到结论?JDK版本不一致导致的问题?

7. 继续测试,将JDK还原成1.8版本。

8. 通过Eclipse Mars运行WEB项目,还是成功的!

9. JDK1.8表示这个锅我不背……

10. 重新使用Eclipse Neon运行,还是相同的错误信息。

11. Eclipse Neon的问题???

12. 最后一击,用Neon重新发布项目,通过Eclipse Server运行,报错依旧。同一个项目,直接手动启动tomcat,成功运行!

13. 结论:

 此次测试环境证书安装是正确的。
JDK1.7和JDK1.8关于SSL证书这块是兼容的。
Eclipse Neon(4.6.)在SSL证书这块是有BUG的。

如果万一遇到和我用同样版本开发的朋友遇到同样的问题,不要一味的纠结自己的证书,换个IDE试一下吧。

Java SSL证书的安装的更多相关文章

  1. 免费获取SSL证书/一键安装SSL证书/https加密

    因为我用的是恒创的香港服务器 虽然价格相较于大促的阿里云贵一些,但是有一个有点不用备案... 安装步骤: 1.登录云主机控制面板, 在 其他管理 中找到并进入 SSL证书 设置. 注意:如拥有多个域名 ...

  2. Let’s Encrypt Wildcard 免费泛域名SSL证书获取安装

    2018 年 1 月Let’s Encrypt CA 宣布免费提供通配符证书(Wildcard certificate).通配符证书是一种可被多个子域使用的公钥证书.这意味着,单个证书可用于提供多台服 ...

  3. Aliyun SSL 证书签发&安装

    目录 HTTPS SSL证书 签发 和 应用 证书购买 证书申请 证书安装 参考文档 HTTPS SSL证书 签发 和 应用 - SSL证书服务(Alibaba Cloud SSL Certifica ...

  4. WIN2003+IIS6环境SSL证书的安装

        下载LOFTER我的照片书  |     一.解压证书文件.证书文件解压后,找到后缀为.pfx的压缩包,进行解压到固定位置.(一般放在网站根目录)        

  5. Win server 2012 +IIS8.0下安装SSL证书

    SSL证书的申请: 成功在景安申请证书后,会得到一个有密码的压缩包文件,输入证书密码后解压得到五个文件:for Apache.for IIS.for Ngnix.for Other Server,这个 ...

  6. LNMP安装Let’s Encrypt 免费SSL证书方法:自动安装与手动配置Nginx

    前几天介绍了最新StartSSL免费SSL申请与配置,很多人看到部落介绍SSL证书安装时总是推荐了OneinStack,因为OneinStack提供了一键添加和配置Let's Encrypt 免费SS ...

  7. SSL安装方法二:Windows Server 2008安装SSL证书(IIS 7.5)

    SSL证书CSR和CA证书唯一的区别就在:申请证书中的通用名称,具体还要看具体的项目这里只做参考.可以参考SSL安装方法一 背景:IIS 7.5 一.收到SSL证书 仔细阅读邮件 按步骤进行: 1)  ...

  8. 阿里云和腾讯云免费SSL证书 专题

    阿里云部署SSL证书 http://www.cnblogs.com/sslwork/p/5984167.html 查找中间证书 为了确保兼容到所有浏览器,我们必须在阿里云上部署中间证书,如果不部署证书 ...

  9. 关于SSL证书配置、升级的一些问题总结

    SSL会成为网站.APP.小程序(小程序已经强制使用https)等项目的标配.关于SSL证书安装使用的问题今天总结下,以备用. 环境配置:windows server 2008 R2和IIS7.0 1 ...

随机推荐

  1. Cocos2d-x3.0 解压zip

    2dx3.0为我们集成了unzip库,帮助我们实现对文件的解压,但使用起来略显复杂我这里封装了一个解压工具库.分享一下. 工具类下载:http://download.csdn.net/detail/q ...

  2. Android与Unity交互研究

    转载请注明出处:http://blog.csdn.net/crazy1235/article/details/46733221 Android与Unity交互研究 unity与android交互的由来 ...

  3. client怎样调用IBinder接口对象

    代码: public void funclick(View view){ Intent _intent = new Intent(MainActivity.this,MyService.class); ...

  4. extjs 按条件查询出的数据在grid上不显示

    在对extjs的按条件查询时.发现仅仅要输入查询条件时,grid上查询的结果就不显示,可是假设不输入条件默认查询全部的 时候就能显示数据.输入条件时后台查出来的数据时时正确的返回到json格式的数据也 ...

  5. 获取音视频文件AVMetadata数据

    获取音视频文件AVMetadata数据 问题来源: http://stackoverflow.com/questions/16318821/extracting-mp3-album-artwork-i ...

  6. 一个十分简洁实用的MD风格的UI主框架

    2017-5-23 详见:https://github.com/baiqiantao/CheesesquareSample MainActivity public class MainActivity ...

  7. C# 轻松实现对窗体(Form)换肤[转]

    一直想写一个比较完整的.容易扩展的窗体换肤的方案,由于时间问题,都没去实现这个想法.现在有朋友提出需要,就把以前写的重新拿出来看了一篇,花了些时间,做出了现在的这个换肤的方案.实现的过程中遇到了不少问 ...

  8. C#中使用TCP通信

    TCP通信需要通信双方都在线,所以需要先启动服务端进行监听,客户端才能获得连接,服务端代码: static void Main(string[] args) { TcpClient client = ...

  9. 《java 语言程序设计》第1章编程练习

    1.1 public class test { public static void main(String[] args) { System.out.println("Welcome to ...

  10. SSIS实践入门2:批量包的调度和SQLServer代理作业配置

    趁着上一篇文章的余温,我们继续研究一下SSIS中多个包如何调度,难道需要一个包一个包的配置调度程序吗?显然不是的,接下来我们就说一说在SSIS应用中如何批量的调度所有的作业,本文只讲述一个基本的逻辑过 ...