Java Web Start 是部署基于 Java TM 技术的应用程序的一种新技术。它是连接计算机和 Internet 的便捷渠道,使用户可以在 Web 上运行和管理应用程序。Java Web Start 提供简便的一点激活应用程序,并确保总是运行最新版本,以消除复杂的安装或升级过程。 ------来自Sun Java Web Start Release
我觉得jws挺简单的,基本上对于程序员来说无须额外学些什么,只要会写个jnlp的文件就可以了. 先对我的环境设置做个说明:
Tomcat4 下载地址:http://jakarta.apache.org/site/binindex.html JavaWebStart1.0.1_02(build b03) 下载地址:http://java.sun.com/products/javawebstart JNLP Developer's Pack 下载地址:http://java.sun.com/products/javawebstart/download-jnlp.html
以下步骤为设置运行支持jnlp的程序
1.配置一个新的Tomcat虚拟目录命名为myjnlp吧,下面建立app,images子目录.
2.写一个MyIE.java,功能是输入一个url,可以打开这个url. 程序中jnlp的部分其实很少. 源程序如下:
import java.awt.*; import java.awt.event.*; import java.io.*; import java.lang.*; import java.applet.*; import javax.swing.*; import javax.jnlp.*;
public class MyIE { BasicService bs; JFrame jFrame; TextField tField; Button button; public MyIE() { jFrame = new JFrame("MyIE Browser"); tField = new TextField("http://www.google.com"); button = new Button("ä¯ÀÀ"); Container p = jFrame.getContentPane(); p.setLayout(new BorderLayout()); p.add(button,BorderLayout.EAST); p.add(tField,BorderLayout.CENTER); button.addMouseListener(new MouseAdapter(){ public void mousePressed(MouseEvent e ) { try{ bs.showDocument(new java.net.URL(tField.getText()));
//打开链接 }catch(java.net.MalformedURLException exp) { exp.printStackTrace(); } } }); jFrame.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) { jFrame.setVisible(false); System.exit(0); } }); jFrame.pack(); jFrame.setSize(400,80); jFrame.setVisible(true);
try { bs = (BasicService)ServiceManager.lookup("javax.jnlp.BasicService");
//查找jnlp的基本服务接口. }catch (UnavailableServiceException e) { bs = null; } catch (Exception e) { bs = null; e.printStackTrace(); } } public static void main(String args[]) { MyIE myie = new MyIE(); } }
3.写一个jnlp的文件命名为MyIE.jnlp(或者其他,但要以jnlp结尾),这是一个描述性的文件. <?xml version="1.0" encoding="UTF-8"?> <jnlp codebase="http://liaoyuan:8080/myjnlp/app"> <information> <title>MyIE</title> <vendor>RookieSoft Corporation</vendor> <description>MyIE just demo how to program with jnlp.</description> <homepage href="http://liaoyuan:8080/myjnlp/app/index.html" /> <icon href="./../images/rookie.gif"/> <icon kind="splash" href="./../images/logo.gif"/> <offline-allowed/> </information> <resources> <j2se version="1.2+"/> <jar href="MyIE.jar"/> </resources> <application-desc main-class="MyIE"/> </jnlp> 保存该文件到app目录下.
4.编译MyIE.java(需要JNLP Developer's Pack中的jnlp.jar;)
5.打包产生的class文件到MyIE.jar,并把MyIE.jar保存到app目录下.
6.建立一个list.html文件,保存到app目录下. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> <head> <title>Remote Apps Webpage</title> </head>
<body> <h1>Remote Apps Webpage</h1> <ul> <li><a href="MyIE.jnlp">MyIE</a> </ul> <hr> <address><a href="mailto:[email protected]">Rookie</a></address> </body> </html>
7. 1>起动你的tomcat访问list.html,点MyIE连接就可以运行了. 2>或者启动你的JavaWebStart,在其文件---->首选项菜单--->高级---->删除应用程序URL文本框中输入list.html的联接. 我的是http://liaoyuan:8080/myjnlp/app/list.html,按确定,点查看远程应用程序就可以看到MyIE列在其中,便可以运行.
这个程序我只用了一点点jnlp的东西,他还有一些的服务如访问本地文件,打印等.可参考JNLP Developer's Pack的帮助. 有疑问的地方欢迎来信讨论[email protected]

|