一.报错: javax.net.ssl.SSLHandshakeException

二.原因分析:
CAS部署时,常常要涉及到HTTPS的证书发布问题。由于在实验环境中,CAS和应用服务常常是共用一台PC机,它们跑在相同的JRE环境和Tomcat服务器上,因此忽略了证书的实际用途,一旦将CAS和应用分别部署在不同的机器上时,就晕了!

这里假设如下实验环境来说明相应的部署  
机器A: 部署CAS服务  
机器B: 部署OA应用 
机器C: 用户浏览器端

1.由机器A上生成.keystore的证书文件,证书颁发者是机器A的完全域名 
2.机器A上用于部署CAS的Tomcat的server.xml文件中定义HTTPS的配置,指向.keystore文件证书 
3.从.keystore中导出的凭证文件要copy到机器B上,并导入机器B的JRE环境的证书库中 
4.机器B上部署OA的Tomcat必须指定运行在导入凭证JRE环境上,而不是JDK,这点常有人搞错。

三.导入证书步骤:
1.找到JRE
1)机器B的OA应用直接部署在Tomcat
>>>独立的JRE
如果你在安装JDK时,选择了同时安装JRE,那么系统是跑在独立的JRE上。
为什么?因为在安装独立JRE的时候程序自动帮你把jre的java.exe添加到了系统变量中,验证的方法很简单,大家看到了系统环境变量的 path最前面有“%SystemRoot%system32;%SystemRoot%;”这样的配置,那么再去Windows/system32下面去看看吧,发现了什么?有一个java.exe。 
>>>JDK里的JRE
如果没有同时安装独立JRE,那么系统跑在JDK自带的JRE上。
2)机器B的OA应用在MyEclipse中开发测试中
MyEclipse-右键project-Java Build Path-Libraries-双击JRE-一般是Workspace default JRE;
MyEclipse-windows-Preferences-Java-Installed JREs-右边有Myeclipse默认自带的JDK,双击即可查到JRE home;
2.到机器A拷贝证书xxx.cer文件到机器B
3.导入命令
cmd进入命令行窗口;
cd进入JRE目录\lib\security;
keytool -import -alias cacerts -keystore JRE目录\lib\security\cacerts -file 证书目录\xxx.cer -trustcacerts;
提示输入密码:changeit;
确定:y
4.如果keytool用不了,查看下path,classpath是否配置正确。

<以上为借鉴>

证书的导入:

1.查看证书:keytool -list -keystore /xxx/cacerts -storepass changeit

2.删除同名证书:keytool -delete -alias 证书名称 -keystore /xxx/cacerts -keypass changeit

3.导入证书:keytool -import -alias 证书名称 -file /xxx/server.cer -keystore /xxx/cacerts -storepass changeit 或者

keytool -import -v -rfc -trustcacerts -alias 证书名称 -file /xxx/server.cer -keystore /xxx/cacerts -storepass changeit -keystore cacerts所在完整路径 -storetype JKS;

4.如果keytool不可用(提示不是内部命令);cd /xxx/jdk1.xxx/bin

或者直接在classpath里面配置%JAVA_HOME%\lib\tools.jar;

转载于:https://www.cnblogs.com/zhaoyhBlog/p/6184304.html

javax.net.ssl.SSLHandshakeException(Cas导入证书)相关推荐

  1. 解决Java调用Azure SDK证书错误javax.net.ssl.SSLHandshakeException

    Azure作为微软的公有云平台,提供了非常丰富的SDK和API让开发人员可以非常方便的调用的各项服务,目前除了自家的.NET, Java, Python, nodeJS, Ruby,PHP等语言都提供 ...

  2. BUG处理:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path buil

    分享目的: 如果别人已经讲述了,这里只会给出相关链接 只补充解决思路. 每个人在寻找解决答案过程中,遇到的痛点难点都是不同的. 这里仅阐述我实际项目遇到问题的解决方案. BUG描述: tomcat配置 ...

  3. 搞定 javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure 问题!

    开始碰到这个问题找遍了各种方法,其实还是需要耐心的先搞清楚原因再想方法靠谱,这里也总结下这个异常的多种解决方案, 首先先理解下为什么出现handshake?字面理解是客户端与服务端握手失败,能导致握手 ...

  4. Android之提示javax.net.ssl.SSLHandshakeException: Chain validation failed

    1.问题 个别手机用OkDownload下载Bilibili网址视频的时候下载失败,但是大部分手机下载没问题. 在继承的DownloadListener4WithSpeed类的重写taskEnd函数里 ...

  5. Https接口异常javax.net.ssl.SSLHandshakeException问题

    收到告警,asr6和asr7服务器请求车场Https接口异常, SSL异常javax.net.ssl.SSLHandshakeException: Received fatal alert: hand ...

  6. javax.net.ssl.SSLHandshakeException: Unacceptable certificate: CN=GeoTrust SSL C

    最近从Android N升级到Android O,发现163的邮箱以pop3,110,SSL/TSL方式登录的时候会弹出Unacceptable certificate: CN=GeoTrust SS ...

  7. 后端七牛云上传图片流程以及后续异常javax.net.ssl.SSLHandshakeException处理

    一.sprinboot整合七牛云 1.先导入依赖 <dependency><groupId>com.qiniu</groupId><artifactId> ...

  8. 使用Java访问https接口javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

    jdk1.6,证书:SHA256+TLSv1.2 使用Java访问https://**************** 接口     控制台提示握手失败错误:javax.net.ssl.SSLHandsh ...

  9. okHttp javax.net.ssl.SSLHandshakeException的解决办法

    安卓线上突然所有接口不能访问,都爆出这个异常 javax.net.ssl.SSLHandshakeException https请求java证书异常 主要原因是前两天公司后台更换java证书问题(以前 ...

最新文章

  1. 【Java面试题】54 去掉一个Vector集合中重复的元素
  2. 基于c语言画图软件,大佬们,小菜鸟想问一问用vc编译器做简易画图软件
  3. [转] 移动平台Html5的viewport使用经验
  4. 阻止中文输入法输入拼音的时候触发input事件
  5. 前端学习(2259)查看历史
  6. 《JavaScript权威指南》——JavaScript核心
  7. Android日志[进阶篇]二-分析堆栈轨迹(调试和外部堆栈)
  8. 线性瘤是良性吗_良性聚会:露营者如何构建开放源代码工具来解决时区
  9. 安卓学习笔记24:常用控件 - 循环器视图
  10. HDVPSS模块介绍及使用
  11. 【图像去噪】基于matlab小波变换+Contourlet变换+PCA图像去噪【含Matlab源码 610期】
  12. 韩天峰(Rango)推荐书目
  13. 程序员,我要为了这个名号而疯狂
  14. 你不知道的东西----半月痕(中医诊断)
  15. 电脑重装系统演示,惠普电脑怎么进入bios,一看就会懂的重装方法
  16. java 抽象final_java抽象、接口 和final
  17. 这场蝴蝶效应,从“丝滑”的双11开始
  18. 计算机怎么无线连接网络地址,笔记本在哪里连接wifi_笔记本电脑如何连接wifi-win7之家...
  19. [Leetcode]数据结构之数组——python版本
  20. 成都商铺商场价格增速仍放缓,租金开始达到止跌回升状态了

热门文章

  1. C++类和对象学习总结
  2. Java Web 三大框架开发资料
  3. 用VS Express 2010开发第一个应用程序
  4. SpringBoot整合RabbitMQ-消息可靠性投递
  5. springboot中关闭eureka server中已注册服务列表自我保护配置
  6. 史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)(Finchley版本)...
  7. weblogic缓存导致的网页验证码无法获取到
  8. 项目管理九大知识体系:
  9. python中axis是什么意思_Python axis的含义
  10. 陕西中小企业促进局 e-mail_重点注意2020陕西工程师职称评审破格指南