首页 文章

使用FileChoosers,Java Web Start下的JNLP API来选择文件

提问于
浏览
0

我正在使用以下链接访问JNLP API:

Using Filechooser

该项目:JWSFileChooserDemo

基本上我想要一个打开和保存对话框从用户获取"text"文件,将其保存在服务器上,读取它,处理等,然后在网站上显示相同的.java文件 .
对于以上两行,我尝试过:

  1. "Integration of Applet with Web Application",此集成正常工作但"Applet .jar file in Web Application"的集成限制了文件的读取 .
    然后我使用Servlets做同样的工作,但文件读取不适用于我 .
    3.现在,我正在使用JNLP,Java Web Start .

但根据我的工作情况 .
我创建了与链接中提到的相同的程序(使用javax.jnlp),但是在单击Open之后,它正在循环显示"User cancelled save request."的else语句 .

我认为,上面的错误是由于applet没有正确签名,因为当我运行链接上给出的JNLP文件时..要求进行以下确认,即

It asks for confirmation to read/write file access

因此,我应该使用项目属性 - > WebStart->启用WebStart->签名 - >通过生成密钥进行自签名,或者使用生成证书的密钥工具(即.crt文件)对其进行签名来签署applet . 有没有其他方法可以做到这一点?

1 回答

  • 2

    有没有其他方法可以做到这一点?

    可以在未签名的应用程序中使用JNLP API服务 . 话虽如此,Oracle已经决定在未来的JRE中,根本不会加载未签名的代码(使用默认的安全性首选项) .

    请注意,这两个链接页面指的是两种不同的加载文件的方法 .

    • 'Using Filechooser'使用Swing提供的 JFileChooser . applet / JWS应用程序 . 使用文件选择器需要在启动文件中声明 all-permissions .

    • JWSFileChooserDemo 演示 . OTOH使用JNLP API文件服务,并在运行时产生类似于所示的提示 . 目前这些不需要签名 .

    就“自签名”而言,甲骨文也提出了反对使用它的警告 . 自签名应用的发布者 . 此刻,将显示为UNKNOWN,其中包含有关接受来自未知来源的代码的额外警告 . 将来,JRE还会自动拒绝自签名代码 .

    从长远来看,唯一真正的选择是提供数字签名的应用程序 . 使用来自证书颁发机构的经过验证的证书签名 .

相关问题