创建SSLContext对象,并使用我们指定的信任管理器初始化 出错

SSLContext sslContext = SSLContext.getInstance("SSL", "SunJSSE");
报错:
java.security.NoSuchProviderException: no such provider: SunJSSE
at sun.security.jca.GetInstance.getService(GetInstance.java:140)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:269)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:5)

运行环境 tomcat6,jdk1.6

3

1个回答

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
创建https请求
//创建SSLContext对象,并使用我们指定的信任管理器初始化 TrustManager[] tm = {new MyX509TrustManager ()}; SSLContext sslContext = SSLContext.getInstance("SSL","SunJSSE"); sslContext.init(null, tm, new java.security.Secure
X509证书信任管理器类的实现及应用
X509证书信任管理器类的实现及应用   (2011-09-20 10:27:18) 转载▼ 标签:  杂谈   在JSSE中,证书信任管理器类就是实现了接口X509TrustManager的类。我们可以自己实现该接口,让它信任我们指定的证书。   接口X509TrustManager有下述三个公有的方法需要我们实现:
X509证书信任管理器类的详解
在JSSE中,证书信任管理器类就是实现了接口X509TrustManager的类。我们可以自己实现该接口,让它信任我们指定的证书。   接口X509TrustManager有下述三个公有的方法需要我们实现:   ⑴ oid checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateEx
[5]AMQP(高级消息队列协议) ----如何创建自己的SSLContext对象
在[4]AMQP(高级消息队列协议) ----改造QPID JMS-0.9 API 对 SSLContext的 支持(http://blog.csdn.net/chancein007/article/category/6294435)的一文中,提到了如何让QPID JMS 0.9 Java对自定义的SSLContext的支持,那么该如何测试呢?其实测试的核心就是如何创建SSLContext对象。
证书信任管理器(用于https请求)
import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import javax.net.ssl.X509TrustManager; /**  * @ClassName: MyXTrustManager.java  * @Description:
JAVA SSL HTTPS 连接详解 生成证书
一、 HTTPS概念1. 简介HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。
https,http综合集成
package com.example.demo.utils.http; import javax.crypto.Cipher; import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLSocketFactory; import javax.net.ssl.T...
轻松把玩HttpClient之配置ssl,采用设置信任自签名证书实现https
在上篇文章《HttpClient配置ssl实现https简单示例——绕过证书验证》中简单分享了一下如何绕过证书验证。如果你想用httpclient访问一个网站,但是对方的证书没有通过ca认证或者其他问题导致证书不被信任,比如12306的证书就是这样的。所以对于这样的情况,你只能是选择绕过证书验证的方案了。 但是,如果是自己用jdk或者其他工具生成的证书,还是希望用其他方式认证自签名的证书,这篇文
HttpClient4.3 关于https 中SSL证书请求问题
废话不说 直接上代码 直接创建调用此方法即可信任所有https SSL证书,SSLConnectionSocketFactory 中设置允许所有主机名称就可以忽略主机名称验证 private static CloseableHttpClient buildSSLCloseableHttpClient() throws Exception { SSLContext sslContext =
SSLContext 去除证书验证
private static Logger log = LoggerFactory.getLogger(CommonUtil.class);     private static final String APPLICATION_JSON = "application/json";     private static final String CONTENT_TYPE_TEXT_JSON
java https信任所有证书
首先感谢http://www.infoq.com/cn/articles/keeping-your-secrets这篇文章解决了我的问题(即不能使用System.setProperty("https.protocols","TLSv1"); ) 以下是两个https信任所有证书的实例:package com.colotnet.util; import java.io.InputStre
证书信任管理器(用于https请求) X509TrustManager
关于接口 X509TrustManager整理 主要方法: checkClientTrusted     void    checkClientTrusted(X509Certificate[] chain, String authType)  参数:chain - 同位体的证书链authType - 基于客户端证书的验证类型抛出:IllegalArgumentEx
OkHttp3.0 添加SSL证书信任
okhttp作为Android主要的网络请求框架之一,对okhttp的使用介绍网上资料也是一堆一堆的。okhttp一个简单的网络请求:Request request = new Request.Builder().get().url("https://www.baidu.com").build();OkHttpClient.Builder builder = new OkHttpClient.Bu...
登陆域时“指定域的名称或安全标识SID与该域的信任信息不一致”解决方法
刚学AD搭建 于是用虚拟机克隆了两台2003 准备模拟下实验环境,一台DC做出来了,准备用另一台登陆域,可是就在登陆的时候问题出现了弹出个对话框告诉我 指定域的名称或安全标识SID与该域的信任信息不一致 下面还有几句话看不到了  问题的原因很简单就是因为我的这台2003是用虚拟机CLONE的 所以这两台机器里面所有的东西都一模一样,当然了里面的SID也就一样了 SID一样会
无根证书时访问 https(httpclient)
1. httpclient 4.2.3 1.1 download url    http://archive.apache.org/dist/httpcomponents/httpclient/binary/    1.2 依赖 jar   commons-logging-1.1.1.jar   httpclient-4.2.3.jar   httpcore-4.2.2.jar
基于HttpClient 4.3的可访问自签名HTTPS站点的新版工具类
本文出处:http://blog.csdn.net/chaijunkun/article/details/40145685,转载请注明。由于本人不定期会整理相关博文,会对相应内容作出完善。因此强烈建议在原始出处查看此文。 HttpClient在当今Java应用中的位置越来越重要。从该项目的变迁过程我们不难发现,其已经从apache-commons众多的子项目中剥离,一跃成为如今的顶级项目,...
Java-JSSE-SSL/TLS编程代码实例-双向认证
使用JSSE实现一个双向认证的SSL/TLS编程代码实例。
在恢复管理器(RMAN)创建恢复目录测试(解决报错'对表空间 XX无权限'和'名称已由现有对象使用')
在恢复管理器(RMAN)创建恢复目录测试(解决报错'对表空间 XX无权限'和'名称已由现有对象使用')
Java_按照指定的日期创建 Date对象
示例代码: import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DateTest { public static void main(String[] args) throws
轻松把玩HttpClient之配置ssl,采用绕过证书验证实现https
上篇文章说道httpclient不能直接访问https的资源,这次就来模拟一下环境,然后配置https测试一下。在前面的文章中,分享了一篇自己生成并在tomcat中配置ssl的文章《Tomcat配置SSL》,大家可以据此来在本地配置https。我已经配置好了,效果是这样滴: 可以看到已经信任该证书(显示浅绿色小锁),浏览器可以正常访问。现在我们用代码测试一下: public st
java,C#,C++ 中SSL 连接信任所有证书.
通过SSL跟服务器做连接的时候,一般需要预先导入服务器证书.否则在建议连接时,会失败,那么怎么样自动信任所有证书呢?以下分别是Java,C#,C++的实现代码:================================ java  ===================package cn.net.drm.encryptInterface;import java.secu
Netty中使用SSL 双向认证
1. 前期准备工作         双向证书认证的双方称为client和server,首先为client和server生成证书。由于仅仅是自己学习使用,因此可以在本地自建一个CA,然后用CA的证书分别签发client和server的证书。CA的创建和签发使用OpenSSL。  在windows环境上安装OpenSSL,然后依据OpenSSL目录下的openssl.cnf中[ CA_de
https客户端证书.p12maven打包后tomcat启动不正确
解决客户端证书验证通不过问题 背景:        三方https接口提供方需要我们对客户端证书做认证,这是我们服务器里面导入client.p12证书,发给三方一个client.cer公钥验证。 生成客户端证书 1. 生成客户端证书库 keytool -validity 3650 -genkeypair -v -alias client -keyalg RSA -store
StringBuilder初始化的大小对性能的影响
StringBuilder 是一个可以动态增加自身数据长度的类。其默认长度(capacity属性)为16。它有一个构造函数,可以指定其容器长度。当数据量小时,指定长度意义不大,但是当数据量比较大时,指定长度会对性能产生显著影响。本文通过一个小示例验证其对性能产生的影响。 代码如下: public class StringBuilderTest { public static void main...
信任管理器
package com.meeting.utils;import java.security.cert.CertificateException; import java.security.cert.X509Certificate;import javax.net.ssl.X509TrustManager;/** * * @ClassName: MyX509TrustManagerUtil
关于类的对象创建与初始化
今天,我们就来解决一个问题,一个类实例究竟要经过多少个步骤才能被创建出来,也就是下面这行代码的背后,JVM 做了哪些事情? Object obj = new Object(); 当虚拟机接受到一条 new 指令时,首先会拿指令后的参数,也就是我们类的符号引用,于方法区中进行检查,看是否该类已经被加载,如果没有则需要先进行该类的加载操作。 一旦该类已经被加载,那么虚拟机会根据类型信息在...
JSONObject和JSONArray对象的创建方法
【原文:http://724073277.iteye.com/blog/1489935】
IIS无法打开,提示无法找到指定的文件的解决方法
        前一段时间,遇到了打开iis,发现提示系统找不到指定路径"您尝试打开 Internet 服务管理器或一个 MMC 管理-在计算机上运行 IIS 5.0 时出现错误信息。查了一下,网友基本上都是建议重新安装iis,我就不明白,昨天还好好,今天就这样,后来在ms的网张上找到了答案,分享出来!症状loadTOCNode(1, symptoms);当您尝试打开 Inte
StringBuffer的用法 1、StringBuffer对象的初始化 StringBuffer对象的初始化不像String类的初始化一样,Java提供的有特殊的语法,而通常情况下一般使用构造方
StringBuffer的用法 1、StringBuffer对象的初始化 StringBuffer对象的初始化不像String类的初始化一样,Java提供的有特殊的语法,而通常情况下一般使用构造方法进行初始化。 例如: StringBuffer s = new StringBuffer(); 这样初始化出的StringBuffer对象是一个空的对象,就是我犯的错误。 如
java创建对象时初始化
一个类中包含,基本类型的静态变量,引用型的静态变量,非静态基本类型变量,非静态引用类型变量,构造器,静态方法,非静态方法,静态域 static{} 这些变量可以定义在类内部的任何位置。 关键点:静态区只要初始化一次,以后每次都不用进行初始化。静态区包括静态变量和静态方法 1.没有继承时即根类是Object 当第一次显示的调用静态的变量或方法时,类名.变量或方法。这时类中的所有的st
1.在使用new创建数组后,此时数组还是一个引用数组。 只有再创建新的对象,并把对象赋值给数组引用,到此初始化结束2.什么是引用类型?
public class swap { public static void main(String[] args) { int[] a=new int[2]; a[1]=12;////基本数据类型new 之后,通过赋值语句来传值 swap[] s = new swap[5]; int i = 0; while (i s[i++] = new swap(); //1. 在Java
vector对象的定义和初始化
第一部分 使用入门 vector可用于代替C中的数组,或者MFC中的CArray,从许多说明文档或者网上评论,一般一致认为应该多用vector,因为它的效率更高,而且具备很好的异常安全性。而且vector是STL推荐使用的默认容器,除非你知道你有特殊需要,使用vector不能满足你的需求,例如需要容器在head和tail高效的插入和删除,或者在任何位置高效的删除和插入操作,那么你可能使用deq
c++ 用new动态申请数组初始化的问题
ref : http://www.cnblogs.com/mywebname/articles/2291540.html注意括号的使用注意:C++使用new和delete在堆(自由存储区)上分配和释放动态数组。动态数组初始化:1.元素只能初始化为元素类型的默认值,而不能像数组变量一样,用初始化列表为数组元素提供各不相同的初值。2.对于内置数据类型元素的数组,必须使用()来显示指定程序执行初始化操作,
java中对象数组的创建与初始化
import java.io.*;class BankAccount{      private double balance;      public BankAccount(double openingBanlance)      {             balance=openingBanlance;      }      public void deposit(double amou
设计模式试题-答案
1、设计模式一般用来解决什么样的问题( a) A.同一问题的不同表相 B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是2、下列属于面向对象基本原则的是( c ) A.继承 B.封装 C.里氏代换 D都不是3、Open-Close原则的含义是一个软件实体( a ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展
Java创建数组对象及初始化
声明一个类Apublic class A { public int score; }在类B中声明类A的数组对象,并进行初始化。public class B { public static void main(String[] args) { //系统分配引用空间 A[] a = new A[5]; for(i = 0; i < ...
解决DFS命名空间服务无法初始化该域控制器上的跨林信任信息
解决DFS命名空间服务无法初始化该域控制器上的跨林信任信息 标签:域控制器 DFS 跨林 休闲 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zhaoming198771.blog.51cto.com/927067/277887 在 Windows Server 2008 R2 上安装 Active Dire
数分笔记整理7 - Pandas Pandas - DataFrame类型的对象 - 创建方式
DataFrame类型 DataFrame是一个多维数据类型。因为通常使用二维数据,因此,我们可以将DataFrame理解成类似excel的表格型数据,由多列组成,每个列的类型可以不同。 因为DataFrame是多维数据类型,因此,DataFrame既有行索引,也有列索引。 一. 创建方式 我们可以使用如下的方式创建(初始化)DataFrame类型的对象(常用): 二维数组结构(列表,ndarr...
js 数组指定初始值
javascript的数组通常不会预置值。如果你用[]得到一个新数组,它将是空的。如果你访问一个不存在的元素,得到的值则是undefined。如果你知道这个问题,或者你在尝试获取每个元素之前都很有预见性地设置它的值,那就万事大吉了。但是,如果你实现的方法是假设每个元素都从一个已知的值开始(例如0),那么你必须自己准备好这个数组。javascript应该提供一些类似Array.dim这样的方法来做这...
对象创建过程,初始化顺序
Java虚拟机创建一个对象都包含以下步骤。 (1)给对象分配内存。 (2)将对象的实例变量自动初始化为其变量类型的默认值。 (3)初始化对象,给实例变量赋予正确的初始值。   对于以上第三个步骤,Java虚拟机可采用3种方式来初始化对象,到底采用何种初始化方式取决于创建对象的方式。 (1)如果对象是通过clone()方法创建的,那么Java虚拟机把原来被克隆对象的实例变量的值拷贝到新对象
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java创建班级对象 我们爱学习ios