推荐的JNLP服务器

时间:2011-07-19 19:04:25

标签: java webserver jnlp java-web-start

我从未使用过JNLP,我没有运行过web / war服务器,所以我将从sratch安装它:

使用哪种?

  • GlassFish的
  • Tomcat的
  • 的Apache
  • 码头
  • 另一个?

我想知道是否有人已经使用JNLP可以为服务器做出任何推荐。

我只想要一个空白页面,中间有一个按钮,用于启动应用程序,仅此而已。

3 个答案:

答案 0 :(得分:10)

如果仅使用JNLP,则不需要Java服务器。 JNLP是客户方。像Apache HTTP Server这样的简单http服务器应该没问题。 HTTP服务器将是比使用Web容器/ Java EE服务器更好的解决方案,因为JNLP(通常)是静态内容。即使是lighthttpd也应该足够了。

答案 1 :(得分:2)

如前所述,任何能够提供HTTP服务的服务器都可以。如果您的WebStart应用程序本身没有签名(即您对相应的Jar文件进行了代码签名),您可能会考虑通过HTTPS发布JNLP及其资源。通过这种方式,您的客户将知道他们将要执行的软件来自其合法的来源。虽然未签名的WebStart应用程序在客户端计算机上的权限受到限制,但它仍然是一种在客户端引起信任的措施。另一方面,这需要针对您选择的服务器进行更多配置工作。

如果您的应用程序在客户端的计算机上需要一些扩展权限,例如访问文件系统,那么我建议您对jar文件进行签名以自动获得必要的权限(不要忘记在元素中指定它们)在你的JNLP内)。

这些是未签名的WebStart应用程序的默认限制:

  • 无法访问本地磁盘。
  • 您必须从同一主机下载所有广告罐。但请注意,只要签名和信任,您就可以从任何主机下载扩展和JRE。
  • 只允许网络连接到您下载jar的主机。 (“电话限制。”)
  • 无法安装任何安全管理器。
  • 没有本地库(甚至没有扩展名)。
  • 对系统属性的有限访问权限。 (该应用程序具有对jnlp文件中定义的所有系统属性的读/写访问权限,以及对与applet相同的属性集的只读访问权限

答案 2 :(得分:-2)

您不需要服务器来运行JNLP(Webstart)..这就是webstart的工作原理

它只是一个可以通过Web启动的应用程序,这将是从用户角度来看的过程:

用户访问yourwebsite.com

用户看到的链接:运行我的真棒应用

用户点击链接,下载.jnlp文件

用户通过java web start运行jnlp文件(java SE的一部分,用户需要java运行时环境JRE来运行它)

java web start读取jnlp以获取有关包含相应应用程序的服务器的信息

自动下载jar文件(第一次),然后启动应用程序

用户感到无聊并关闭了应用

第二天,用户返回并再次点击您的链接

应用程序已经下载,因此立即启动

用户再次感到无聊并关闭您的应用程序

1天后,您决定更新您的应用程序并在您的应用程序上部署新的jar文件 服务器,替换其中一个旧文件

用户再次点击您的链接2天后

java web start识别出用户具有不同的版本,自动下载更新并再次启动应用程序 ... ..