Java Web Start(以下简称JWS)是SUN提供的一种通过Web来部署和发布Java 程序的新技术,它既可以用来发布Application,也可以用来发布Applet,它获去年全球Java技术最佳创意奖。它仅在第一次运行时下载程序,以后的事情,就全全交给JWS,包括版本的自动更新和维护。这是我们曾经梦寐以求的事情,程序运行在客户端(本地运行,当然有足够的速度),但不用去安装配置客户端,也不用去考虑版本升级后对客户端的维护,这就是JWS提供给我们的好处之一。OK,下面我们就来看看如何玩转JWS,本文仅用发布Application来做说明。
系统环境:Win2000Professional+Tomcat3.2.1+JDK1.3。
一:JWS简介
JWS主要用来通过网络部署你的应用程序,它具有安全、稳定、易维护、易使用的特点。用户访问用JWS部署应用程序的站点,下载发布的应用程序,既可以在线运行,也可以通过JWS的客户端离线运行已下载的应用程序。对同一个应用程序,在第一次运行时下载,以后每次运行时,JWS的客户端会自动去探测是否有版本更新,有更新就自动下载新版本,没有更新就直接运行本地当前版本,所有的麻烦全由JWS去承担。好,下面我们就一步一步来搭建JWS
二:搭建支持JWS的Web站点
第一步:你的Tomcat3.2.1已经正常运转
第二步:找到TomcatHOME/conf下的web.XML文件,在其中添加
application/x-java-jnlp-file
以支持JNLP文件。
三:部署应用程序
第一步:开发你希望发布的应用程序
第二步:把应用程序及所用到的所有资源打成一个或多个jar包
第三步:假如你的应用程序不会用到任何运行这个应用程序的机器的本地资源,那么,你的应用程序就可以部署了。
第四步:假如你的应用程序用到了运行这个应用程序的机器的本地资源,那么,你的应用程序就必须先签名然后才可以发布。
第五步:如何给应用程序签名
1:首先确保你已经完全安装了Java2的环境,有keytool工具,它位于J2SE SDk的bin目录下。这一般不会有问题。
2:到Dos状态下,进入你需发布应用程序的jar包所在的目录,运行下面这句话
keytool -genkey -keystore myKeystore -alias jwstest
它将会提示你输入用户名、密码等,不用理它,按照提示随便输入即可,但一定要记住密码。运行结束它将会在当前路径下创建名为myKeystore的文件。
3:假如你想察看一下刚才生成的myKeystore文件的内容,可以使用下面这句话:
keytool -list -keystore myKeystore
显示出来应该类似如下:
Keystore type: jks
Keystore provider: SUN
Your keystore contains 1 entry:
jwstest, Tue Nov 23 19:29:32 PST 2001, keyEntry,
Certificate fingerprint (Test):
C3:A9:CD:F3:D3:AC:4D:3F:3C:5B:AF:9E:CF:0D:46:5C
4:对你需发布应用程序的jar包进行签名,运行下面这句话:
jarsigner -keystore myKeystore yourtest.jar jwstest
其中yourtest.jar是你的jar包名,你需要修改它,别的就不必修改了。运行时会提示你输入密码,就是你刚才在生成myKeystore文件时设定的密码。
第六步:部署应用程序的jar包。
1:在Tomcat的webapps中新建目录JWSTest
2:在JWSTest下新建目录apps,META-INF,WEB-INF