Java Web start和SSL。加载localhost-ca证书

时间:2012-07-23 18:28:43

标签: java ssl java-web-start

我一直致力于让一个NASA WorldWind applet在ssl上运行,并且遇到了一个相当困难的错误信息。

当我尝试运行纯webstart applet时,它会抛出“sun.security.validator.ValidatorException:PKIX路径验证失败:java.security.cert.CertPathValidatorException:Path不与任何信任锚链接” 根据我的理解,这意味着它无法为applet找到CA.这没有多大意义,因为签名证书及其ca(Localhost.crt和localhost-ca.crt)都在同一个密钥库中,我将其标记为信任库。

对于这个问题的建议和帮助将不胜感激,因为我已经尝试了我能想到的一切。

我尝试过的事情:

  • 将localhost-ca crt添加到JVM的基础cacerts文件
  • 将信任库添加到包含localhost crt和localhost CA的jlnp文件中
  • 确保所有必需的.jar文件都由同一个crt签名
    • 是的我甚至将jogl.jar及其所有原生代码下载到我的电脑上并辞去了他们的删除旧META-INF
  • 将Jnlp文件加载到常规http上以确保它不是只需单击webstart(相同错误)

附件是我的WWApplet代码。

<?xml version="1.0" encoding="UTF-8"?>

   <jnlp href="WWJApplet.jnlp" codebase =".">
    <information>
        <title>World Wind Java Applet Demo</title>
        <vendor>NASA</vendor>
        <homepage href="http://worldwind.arc.nasa.gov"/>
        <description>World Wind Java Applet Demo</description>
        <description kind="short">World Wind Java Applet Demo</description>
        <offline-allowed/>
    </information>
    <security>
        <all-permissions/>
    </security>
     <resources os="Windows">
       <property name="sun.java2d.noddraw" value="true"/>
     </resources>
     <resources>
        <j2se href="http://java.sun.com/products/autodl/j2se" version="1.6+" initial-heap-size="512m"
              max-heap-size="512m"/>
        <property name="sun.java2d.noddraw" value="true"/>
        <property name="Djavax.net.ssl.trustStore"        
value="C:\Users\srivera\Documents\Apache-Install\tomcat-owf\certs\keystore.jks"/>
            <property name="Djavax.net.ssl.trustStorePassword" value="password"/>
        <jar href="WorldWindWidget.jar" main="true"/>
        <jar href="Windworld.jar"/>
        <extension name="jogl" href="jogl.jnlp"/>
     </resources>
     <!-- Width and heigth are overwritten by the surrounding web page -->
     <applet-desc
         name="WWJ Applet"
         main-class="org.me.windworldwidget.WorldWindWidget"
         width="800" height="600">
        <param name="separate_jvm" value="true" />
     </applet-desc>
   </jnlp>

0 个答案:

没有答案