繁体   English   中英

如何强制Java Web Start运行自签名JNLP?

[英]How can I force Java Web Start to run a self-signed JNLP?

我们正在开发一个使用Java Web Start的应用程序。

当我尝试启动我的JNLP文件时,我收到此警告: Java应用程序被阻止

“位置”( http://<IP>:port )已添加到“例外站点列表”中。 我本以为这本身足以让JNLP运行起来。

但是,我还在“高级”下完成了以下操作:

我只有一个Java版本 - 它是Java 1.8.0_91,32位。

我还需要做些什么来让我的JNLP运行?

问题是清单中缺少Permissions属性,因此在Java 1.8中没有警告就被阻止了。 如果您运行Java 1.7,则会出现警告。

Java安全性是一个有趣的小事,必须要与之搏斗。

将JavaWS应用程序的站点添加到Java安全性例外列表中。 你说你已经这样做了,但你是否也标记了你的JNLP文件以指出它来自哪个网站?

从本质上讲,jnlp文件只是一个XML文件,除非它说明它来自哪里,否则java可能无法确定它是否来自可信站点。

你在JNLP中有一个类似的标签吗?

<jnlp href="someWebstartApp.jnlp" spec="1.0+" codebase="http://myserver.com/" xmlns:jfx="http://javafx.com">

具体来说,href(代码库中jnlp文件的名称)和代码库(可以找到jnlp文件和jar)的位。

或者,您可以尝试直接从命令行调用javaws:

javaws http:/myserver.com/someWebstartApp.jnlp

这将让Java抓取JNLP文件本身,而不是浏览器的启动过程,这可能无法告诉Java jnlp来自哪个URL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM