2014-10-15 18 views
6

Kullanıcının PC'sinden SD kart verilerini okumak için kullandığım bir Java uygulamasına sahibim. Uygulama, giriş yaptığınız bir web sitesinde yaşıyor. Web sitesine giriş yapmak için bir tarayıcı sertifikası kullanmalısınız. Giriş yaptıktan sonra SD kart indirme sayfasına gidersiniz, uygulama başlatır, kart verilerini okur ve sayfadaki bazı JavaScript'lere gönderir.Java uygulaması, Java 8 yükseltmesinden sonra IE'de yüklenmez

Şu anda sahip olduğum sorun, tarayıcımda Java 8'i yüklediğinden beri uygulamanın yüklenmemesidir. Özellikle, IE'nin herhangi bir sürümünde çalışmaz (8, 9, 10 ve 11 test edilmiş). Firefox'ta iyi çalışıyor. Chrome'u denemedim.

Benzer bir sorunu olan başka kimseyi bulamadım. Nispeten yeni olduğu için olabilir. Bunun neden olduğunu bilen var mı ve nasıl düzeltileceği hakkında bir fikriniz var mı?

IE8'deki Java konsolunda ilgili görünen bir stacktrace var. İşte bazı ilginç parçalarıdır:

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 

Düzenleme: Burada bilgi ek bir parça. Uygulama, OpenSSL 1.0.1i ile farklı bir sunucuda doğru şekilde çalışır. Uygulama, OpenSSL 1.0.0m'ye sahip orijinal sunucuyla çalışmaz.

İşte tam günlük. Stacktrace, Firefox'un günlüğünde görünmez.

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 

cevap

0

Java Kontrol panelinde aşağıdaki komutu ekleyin. java - görünümüne git - çalışma zamanı parametresi bu komutu yapıştır.

-Djava.net.preferIPv4Stack = true.

Sorunum olmadan benim için çalışıyor.