如何使用Java网络启动部署软件

ZDNet软件频道 时间:2006-10-05 作者:builder.com.com |  我要评论(7)
本文关键词: Java javatrend JWS j2ee J2EE
Java网络启动 (Java Web Start (JWS) )可以实现在网络浏览器中运行具备全部特色的Java应用软件,本文将向您介绍这一重要技术。

Java网络启动(Java Web Start (JWS) )可以实现在网络浏览器中运行具备全部特色的Java应用软件。Sun公司在2001年三月发布的Java1.0就已经具备了对JWS的支持,自从J2SE1.4版本以来,JWS就已经成为Java运行时环境(Java Runtime Environment (JRE) )的默认配置,不必再单独安装了,在这篇文章中,我将向您介绍这一重要技术。

技术

JWS是与网络浏览器相结合的应用软件,当用户点击链接的时候就会指向一个Java网络启动协议(Java Network Launching Protocol (JNLP) )文件,然后浏览器自动启动JWS,接着下载、缓存并运行基于Java技术的应用软件。

JWS背后的技术是JNLP及其API,它们是在Java团体进程(Java Community Process)中开发的。JWS实际上是JNLP规范的一个参考实现,JNLP技术定义了一个标准的文件格式,该格式描述了如何调用一个JNLP文件。

既然安装链接可以作为普通的HTTP URL的链接,那么您就可以通过网页来检查客户端是否安装了JWS,您可以在IE中通过以下代码来检查:

<SCRIPT LANGUAGE="VBScript">

on error resume next

If isIE = "true" Then

  If Not(IsObject(CreateObject("JavaWebStart.isInstalled"))) Then

     JavawsInstalled = 0

  Else

     JavawsInstalled = 1

  End If

  If Not(IsObject(CreateObject("JavaWebStart.isInstalled.1.4.2.0"))) Then

     Javaws142Installed = 0

  Else

     Javaws142Installed = 1

  End If

  If Not(IsObject(CreateObject("JavaWebStart.isInstalled.1.5.0.0"))) Then

     Javaws150Installed = 0

  Else

     Javaws150Installed = 1

  End If 

End If

</SCRIPT>

开发

开发部署在JWS上的软件和开发独立运行的软件在Java 2平台上是基本相同的,比如,程序的起点都是以下的标准代码:

public static void main(String[] argv)

然而,为了支持网络部署,也就是实现自动下载和调用软件,并且保证软件在一个安全的沙盒中运行,还需要一些额外的考虑,包括:

  • 应用软件必需作为JAR文件集合来使用;
  • 所有的应用软件资源,比如文件、图片都必需存储在JAR文件中,而且它们都必需使用Java 2平台的getResource机制来引用;
  • 应用软件可以使用System.exit调用;
  • 进行不受限制地访问系统的软件需要通过签名的JAR文件来使用,而且JAR文件中所有的项目都必需经过签名;
  • 如果软件要运行在一个安全沙盒中,那么它必需遵循以下的限制;
  • 不能进行本地磁盘访问;
  • 所有的JAR文件都必须从同一个主机下载;
  • 只能和下载JAR文件的主机之间建立网络连接;
  • 不能安装安全管理器;
  • 不能使用本地类库;

对系统属性的访问受到限制,对于JNLP中定义了的系统属性,应用软件可以进行读/写操作,并且对于相同的属性集合具备和applet一样的只读权限。

Java

javatrend

JWS

j2ee

J2EE


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134