Java小程序赢得';Java 8升级后,在IE中无法加载

Java小程序赢得';Java 8升级后,在IE中无法加载,java,applet,certificate,java-8,Java,Applet,Certificate,Java 8,我有一个Java小程序,用于从用户的PC读取SD卡数据。小程序位于您登录的网站上。要登录网站,必须使用浏览器证书。登录后,进入SD卡下载页面,小程序初始化、读取卡数据,并将其发送到页面上的一些JavaScript 我现在遇到的问题是,在我的浏览器上安装Java 8后,小程序没有加载。具体来说,它在IE的任何版本(测试8、9、10和11)中都不起作用。它在Firefox中运行良好。我没有试过Chrome 我还没有发现其他人有类似的问题。这可能是因为它相对较新。有人知道为什么会发生这种情况,并且知道

我有一个Java小程序,用于从用户的PC读取SD卡数据。小程序位于您登录的网站上。要登录网站,必须使用浏览器证书。登录后,进入SD卡下载页面,小程序初始化、读取卡数据,并将其发送到页面上的一些JavaScript

我现在遇到的问题是,在我的浏览器上安装Java 8后,小程序没有加载。具体来说,它在IE的任何版本(测试8、9、10和11)中都不起作用。它在Firefox中运行良好。我没有试过Chrome

我还没有发现其他人有类似的问题。这可能是因为它相对较新。有人知道为什么会发生这种情况,并且知道如何解决吗

IE8中的Java控制台中有一个stacktrace,看起来很相关。以下是一些有趣的作品:

javax.net.ssl.SSLHandshakeException: Error signing certificate verify
...
Caused by: java.security.InvalidKeyException: No installed provider supports this key: com.sun.deploy.security.MSCryptoRSAPrivateKey
...
com.sun.deploy.net.FailedDownloadException: Unable to load resource: https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp
编辑:这里还有一条信息。小程序使用OpenSSL 1.0.1i在不同的服务器上正常工作。小程序不适用于具有OpenSSL 1.0.0m的原始服务器

这是完整的日志。stacktrace不会出现在Firefox的日志中

Java Plug-in 11.25.2.18
Using JRE version 1.8.0_25-b18 Java HotSpot(TM) Client VM
User home directory = C:\Users\codyj
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------
network: Created version ID: 1.8.0.25
network: Created version ID: 1.8
network: Created version ID: 8.0.25
network: Connecting https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp with proxy=DIRECT
network: Connecting http://xdc-fqq02.example.com:443/ with proxy=DIRECT
security: Loading SSL Root CA certificates from C:\Program Files (x86)\Java\jre1.8.0_25\lib\security\cacerts
security: Loaded SSL Root CA certificates from C:\Program Files (x86)\Java\jre1.8.0_25\lib\security\cacerts
security: Obtain certificate collection in SSL Root CA certificate store
security: Obtain certificate collection in SSL Root CA certificate store
security: Loading certificates from Deployment session certificate store
security: Loaded certificates from Deployment session certificate store
security: Loading certificates from Internet Explorer ROOT certificate store
security: Loaded certificates from Internet Explorer ROOT certificate store
security: Loading certificates from Internet Explorer DISALLOWED certificate store
security: Loaded certificates from Internet Explorer DISALLOWED certificate store
security: Loaded blacklisted.certs file: C:\Users\codyj\AppData\LocalLow\Sun\Java\Deployment\security\blacklisted.certs
security: SHA-256Certificate finger print: F94D2C80A1172FC591F964D4DC0E8BAF493C92FE678B6B8B07D362607EBD33AB
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0855414AF5F5FD7E264F8B002A39CCED67E5952E89B61B680CC847BAA34944DE
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0AE1484292B20EE696D4593DBE46F91479F8DAD58FC057CFD52FA3FA8FB3CE4B
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: Checking if SSL certificate is in Deployment permanent certificate store
security: Loading certificates from Internet Explorer ROOT certificate store
security: Loaded certificates from Internet Explorer ROOT certificate store
security: Saving certificates in Deployment session certificate store
security: Saved certificates in Deployment session certificate store
javax.net.ssl.SSLHandshakeException: Error signing certificate verify
  at sun.security.ssl.Alerts.getSSLException(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
  at sun.security.ssl.Handshaker.fatalSE(Unknown Source)
  at sun.security.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
  at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
  at sun.security.ssl.Handshaker.processLoop(Unknown Source)
  at sun.security.ssl.Handshaker.process_record(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)
  at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.access$200(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.AccessController.doPrivileged(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
  at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
  at com.sun.deploy.net.HttpUtils.followRedirects(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doGetRequestEX(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.model.ResourceProvider.getResource(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory._buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source)
  at sun.plugin2.main.client.PluginMain.initManager(Unknown Source)
  at sun.plugin2.main.client.PluginMain.access$200(Unknown Source)
  at sun.plugin2.main.client.PluginMain$2.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)
Caused by: java.security.InvalidKeyException: No installed provider supports this key: com.sun.deploy.security.MSCryptoRSAPrivateKey
  at java.security.Signature$Delegate.chooseProvider(Unknown Source)
  at java.security.Signature$Delegate.engineInitSign(Unknown Source)
  at java.security.Signature.initSign(Unknown Source)
  at sun.security.ssl.HandshakeMessage$CertificateVerify.<init>(Unknown Source)
  ... 34 more
network: Connecting https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp with proxy=DIRECT
network: Connecting http://xdc-fqq02.example.com:443/ with proxy=DIRECT
security: Obtain certificate collection in SSL Root CA certificate store
security: Obtain certificate collection in SSL Root CA certificate store
security: Loading certificates from Deployment session certificate store
security: Loaded certificates from Deployment session certificate store
security: SHA-256Certificate finger print: F94D2C80A1172FC591F964D4DC0E8BAF493C92FE678B6B8B07D362607EBD33AB
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0855414AF5F5FD7E264F8B002A39CCED67E5952E89B61B680CC847BAA34944DE
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0AE1484292B20EE696D4593DBE46F91479F8DAD58FC057CFD52FA3FA8FB3CE4B
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
javax.net.ssl.SSLHandshakeException: Error signing certificate verify
  at sun.security.ssl.Alerts.getSSLException(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
  at sun.security.ssl.Handshaker.fatalSE(Unknown Source)
  at sun.security.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
  at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
  at sun.security.ssl.Handshaker.processLoop(Unknown Source)
  at sun.security.ssl.Handshaker.process_record(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)
  at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.access$200(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.AccessController.doPrivileged(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
  at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
  at com.sun.deploy.net.HttpUtils.followRedirects(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doGetRequest(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.model.ResourceProvider.getResource(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory._buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source)
  at sun.plugin2.main.client.PluginMain.initManager(Unknown Source)
  at sun.plugin2.main.client.PluginMain.access$200(Unknown Source)
  at sun.plugin2.main.client.PluginMain$2.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)
Caused by: java.security.InvalidKeyException: No installed provider supports this key: com.sun.deploy.security.MSCryptoRSAPrivateKey
  at java.security.Signature$Delegate.chooseProvider(Unknown Source)
  at java.security.Signature$Delegate.engineInitSign(Unknown Source)
  at java.security.Signature.initSign(Unknown Source)
  at sun.security.ssl.HandshakeMessage$CertificateVerify.<init>(Unknown Source)
  ... 35 more
com.sun.deploy.net.FailedDownloadException: Unable to load resource: https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp
  at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.model.ResourceProvider.getResource(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory._buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source)
  at sun.plugin2.main.client.PluginMain.initManager(Unknown Source)
  at sun.plugin2.main.client.PluginMain.access$200(Unknown Source)
  at sun.plugin2.main.client.PluginMain$2.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)
Caused by:
javax.net.ssl.SSLHandshakeException: Error signing certificate verify
  at sun.security.ssl.Alerts.getSSLException(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
  at sun.security.ssl.Handshaker.fatalSE(Unknown Source)
  at sun.security.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
  at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
  at sun.security.ssl.Handshaker.processLoop(Unknown Source)
  at sun.security.ssl.Handshaker.process_record(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
  at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)
  at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.access$200(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.AccessController.doPrivileged(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
  at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
  at com.sun.deploy.net.HttpUtils.followRedirects(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
  at com.sun.deploy.net.BasicHttpRequest.doGetRequest(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
  at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
  at com.sun.deploy.model.ResourceProvider.getResource(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory._buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
  at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source)
  at sun.plugin2.main.client.PluginMain.initManager(Unknown Source)
  at sun.plugin2.main.client.PluginMain.access$200(Unknown Source)
  at sun.plugin2.main.client.PluginMain$2.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)
Caused by: java.security.InvalidKeyException: No installed provider supports this key: com.sun.deploy.security.MSCryptoRSAPrivateKey
  at java.security.Signature$Delegate.chooseProvider(Unknown Source)
  at java.security.Signature$Delegate.engineInitSign(Unknown Source)
  at java.security.Signature.initSign(Unknown Source)
  at sun.security.ssl.HandshakeMessage$CertificateVerify.<init>(Unknown Source)
  ... 35 more
network: Connecting https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp with proxy=DIRECT
network: Connecting http://xdc-fqq02.example.com:443/ with proxy=DIRECT
security: Obtain certificate collection in SSL Root CA certificate store
security: Obtain certificate collection in SSL Root CA certificate store
security: Loading certificates from Deployment session certificate store
security: Loaded certificates from Deployment session certificate store
security: SHA-256Certificate finger print: F94D2C80A1172FC591F964D4DC0E8BAF493C92FE678B6B8B07D362607EBD33AB
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0855414AF5F5FD7E264F8B002A39CCED67E5952E89B61B680CC847BAA34944DE
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
security: SHA-256Certificate finger print: 0AE1484292B20EE696D4593DBE46F91479F8DAD58FC057CFD52FA3FA8FB3CE4B
security: Checking if certificate is in Internet Explorer DISALLOWED certificate store
basic: JNLP2Manager.initialize(): JNLP not available: /cardtocloud/cardtocloud.jnlp
basic: exception: null.
java.lang.NullPointerException
  at sun.plugin2.applet.JNLP2Manager.getAppInfo(Unknown Source)
  at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)
Ignored exception: java.lang.NullPointerException
basic: Dialog type is not candidate for embedding
security: Reset deny session certificate store
Java插件11.25.2.18
使用JRE版本1.8.0_25-b18 Java HotSpot(TM)客户端虚拟机
用户主目录=C:\Users\codyj
----------------------------------------------------
c:清除控制台窗口
f:在终结队列上终结对象
g:垃圾收集
h:显示此帮助消息
l:转储类加载器列表
m:打印内存使用情况
o:触发日志记录
q:隐藏控制台
r:重新加载策略配置
s:转储系统和部署属性
t:转储线程列表
v:转储线程堆栈
x:清除类加载器缓存
0-5:将跟踪级别设置为
----------------------------------------------------
网络:已创建版本ID:1.8.0.25
网络:已创建版本ID:1.8
网络:已创建版本ID:8.0.25
网络:连接https://xdc-fqq02.example.com/cardtocloud/cardtocloud.jnlp 使用proxy=DIRECT
网络:连接http://xdc-fqq02.example.com:443/ 使用proxy=DIRECT
安全性:从C:\Program Files(x86)\Java\jre1.8.0\U 25\lib\security\cacerts加载SSL根CA证书
安全性:从C:\Program Files(x86)\Java\jre1.8.0\U 25\lib\security\cacerts加载SSL根CA证书
安全性:在SSL根CA证书存储中获取证书集合
安全性:在SSL根CA证书存储中获取证书集合
安全性:从部署会话证书存储加载证书
安全性:从部署会话证书存储加载证书
安全性:从Internet Explorer根证书存储加载证书
安全性:从Internet Explorer根证书存储加载证书
安全性:从Internet Explorer不允许的证书存储加载证书
安全性:从Internet Explorer不允许的证书存储加载的证书
安全性:加载的blacklisted.certs文件:C:\Users\codyj\AppData\LocalLow\Sun\Java\Deployment\security\blacklisted.certs
安全性:SHA-256证书指纹:F94D2C80A1172FC591F964D4DC0E8BAF493C92FE678B6B8B07D362607EBD33AB
安全性:检查证书是否在Internet Explorer不允许的证书存储中
安全性:SHA-256证书指纹:0855414AF5F5FD7E264F8B002A39CCED67E5952E89B61B680CC847BAA34944DE
安全性:检查证书是否在Internet Explorer不允许的证书存储中
安全性:SHA-256证书指纹:0AE1484292B20EE696D4593DBE46F91479F8DAD58FC057CFD52FA3FA8FB3CE4B
安全性:检查证书是否在Internet Explorer不允许的证书存储中
安全性:检查SSL证书是否在部署永久证书存储中
安全性:从Internet Explorer根证书存储加载证书
安全性:从Internet Explorer根证书存储加载证书
安全性:在部署会话证书存储中保存证书
安全性:已将证书保存在部署会话证书存储中
javax.net.ssl.SSLHandshakeException:签署证书验证时出错
位于sun.security.ssl.Alerts.getSSLException(未知源)
位于sun.security.ssl.SSLSocketImpl.fatal(未知源)
位于sun.security.ssl.Handshaker.fatalSE(未知源)
位于sun.security.ssl.ClientHandshaker.serverHelloDone(未知源)
位于sun.security.ssl.ClientHandshaker.processMessage(未知源)
位于sun.security.ssl.Handshaker.processLoop(未知源)
位于sun.security.ssl.Handshaker.process_记录(未知源)
位于sun.security.ssl.SSLSocketImpl.readRecord(未知源)
位于sun.security.ssl.SSLSocketImpl.performInitialHandshake(未知源)
位于sun.security.ssl.SSLSocketImpl.startHandshake(未知源)
位于sun.security.ssl.SSLSocketImpl.startHandshake(未知源)
位于sun.net.www.protocol.https.HttpsClient.afterConnect(未知来源)
位于sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.getInputStream0(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.access$200(未知来源)
位于sun.net.www.protocol.http.HttpURLConnection$9.run(未知源)
位于sun.net.www.protocol.http.HttpURLConnection$9.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.security.AccessController.doPrivileged(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.getInputStream(未知源)
位于sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(未知源)
位于com.sun.deploy.net.HttpUtils.followRedirects(未知源)
在com.sun.deploy.net.basichttrequest.doRequest(未知源)
位于com.sun.deploy.net.BasicHttpRequest.doGetRequestEX(未知源)
在com.sun.deploy.net.DownloadEngine.actionDownload(未知源)上
位于com.sun.deploy.net.DownloadEngine.downloadResource(未知源)
位于com.sun.deploy.cache.ResourceProviderImpl.getResource(未知源)
请访问com.sun.deploy。
-Djava.net.preferIPv4Stack=true.