学用JavaWebStart部署应用程序
摘录:java基础 来源:java基础 加入时间:2007年03月08日
摘要:
学用JavaWebStart部署应用程序
Java Web Start 是部署基于 Java TM 技术的应用程序的一种新技术。它是连接计算机和 Internet 的便捷渠道,使用户可以在 Web 上运行和管理应用程序。Java Web Start&nbs;…
转载:转载请保留本信息,本文来自
http://www.51dibs.com /html/2006/article/info8/a_c9ac7095f7e0e020.htm
学用JavaWebStart部署应用程序
站点:爱心种子小博士 关键字:学用JavaWebStart部署应用程序
学用JavaWebStart部署应用程序
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 Developers Pack 下载地址:http://java.sun.com/products/javawebstart/download-jnlp.html以下步骤为设置运行支持jnlp的程序
配置一个新的Tomcat虚拟目录命名为myjnlp吧,下面建立app,images子目录.
写一个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();
}
}
写一个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目录下.
编译MyIE.java(需要JNLP Developers Pack中的jnlp.jar;)
打包产生的class文件到MyIE.jar,并把MyIE.jar保存到app目录下.
建立一个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>
1) 起动你的tomcat访问list.html,点MyIE连接就可以运行了. 2) 或者启动你的JavaWebStart,在其文件---->首选项菜单--->高级---->删除应用程序URL文本框中输入list.html的联接. 我的是http://liaoyuan:8080/myjnlp/app/list.html,按确定,点查看远程应用程序就可以看到MyIE列在其中,便可以运行. 这个程序我只用了一点点jnlp的东西,他还有一些的服务如访问本地文件,打印等.可参考JNLP Developers Pack的帮助. 有疑问的地方欢迎来信讨论[email protected]