java web start是部署基于java tm技术的应用程序的一种新技术。它是连接计算机和 internet的便捷渠道,使用户可以在 web 上运行和管理应用程序。java web start 提供简便的一点激活应用程序,并确保总是运行最新版本,以消除复杂的安装或升级过程。
我觉得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的程序,配置一个新的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="http://www.itus.cn./../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 developer's 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:rookieport@hotmail.com">
rookie</a></address>
</body>
</html>
1)起动你的tomcat访问list.html,点myie连接就可以运行了。
2)或者启动你的javawebstart,在其文件---->首选项菜单--->高级---->删除应用程序url文本框中输入list.html的联接。
我的是http://liaoyuan:8080/myjnlp/app/list.html,按确定,点查看远程应用程序就可以看到myie列在其中,便可以运行。
闽公网安备 35060202000074号