猿问

如何从本地html文件启动Java Web?

我正在尝试使用Java Web Start从本地网页启动Java应用程序,但出现安全错误。这是jnlp文件:


<jnlp spec="1.0+" 

      href="dynamictree_webstart_no_codebase.jnlp">

    <information>

        <title>Dynamic Tree Demo No Codebase</title>

        <vendor>Dynamic Team</vendor>

    </information>

    <resources>

        <!-- Application Resources -->

        <j2se version="1.7+"

              href="http://java.sun.com/products/autodl/j2se"/>

        <jar href="DynamicTreeDemo.jar" main="true" />

    </resources>

    <security>

        <all-permissions/>

    </security>    

    <application-desc

         name="Dynamic Tree Demo Application"

         main-class="webstartComponentArch.DynamicTreeApplication">

     </application-desc>

     <update check="background"/>

</jnlp>

如果我使用以下网址:


file:///C:/Users/Greg/Desktop/JavaWebStartExamples/webstart_ComponentArch_DynamicTreeDemo/src/JavaWebStartAppPage_No_Codebase.html

然后出现一个对话框,提示“应用程序被Java安全性阻止,您的安全性设置已阻止本地应用程序运行”


因此,然后将“ file:// desktop-60nl2pl”添加到Chrome中的“受信任的站点”区域,然后取消选中“需要对该区域中的所有站点进行服务器验证(https :)”,然后将网址更改为以下内容:


"file://desktop-60nl2pl/Users/Greg/Desktop/JavaWebStartExamples/webstart_ComponentArch_DynamicTreeDemo/src/JavaWebStartAppPage_No_Codebase.html"

然后会弹出一个对话框,提示“无法启动该应用程序”。单击“详细信息”按钮将显示“ java.lang.IllegalArgumentException:URI在java.io.File。(未知源)的权限组件在com.sun.javaws.jnl.XMLFormat.setSourceURL(未知源)”。


我已经用一个自签名的crt对罐子进行了签名,但是显然这还不够。我已经阅读了此问题,并且一个可能的解决方案似乎是它现在需要由受信任的CA证书签名。真的吗?只是为了在我的本地计算机上进行测试?当然还有另一种方法吗?


萧十郎
浏览 199回答 2
2回答

繁花如伊

解决方案是将以下行添加到“ Java控制面板”的“安全性”选项卡中的“例外站点列表”中:file:///C:/Users/Greg/Projects/Enventive/En360_UI/WebContent/DynamicTreeDemo.jar&nbsp; file:///C:/Users/Greg/Projects/Enventive/En360_UI/WebContent/dynamictree_webstart_no_codebase.jnlp大概只需要这两个之一即可。
随时随地看视频慕课网APP

相关分类

Java
我要回答