Java Web Start 入门(二)

转载 2012年07月21日 09:13:48
一.搭建支持JWS的Web站点
    1.你的Tomcat已经正常运转
    2.找到TomcatHOME/conf下的web.xml文件,在其中添加 application/x-java-jnlp-file 以支持JNLP文件.
 
二.部署应用程序
    1.开发你希望发布的应用程序
    2.把应用程序及所用到的所有资源打成一个或多个jar包
    3.如果你的应用程序不会用到任何运行这个应用程序的机器的本地资源,那么,你的应用程序就可以部署了。
    4.如果你的应用程序用到了运行这个应用程序的机器的本地资源,那么,你的应用程序就必须先签名然后才可以发布。
    5.如何给应用程序签名
        A.首先确保你已经完全安装了Java2的环境,有keytool工具,它位于J2SE SDk的bin目录下。这一般不会有问题。
        B.到Dos状态下,进入你需发布应用程序的jar包所在的目录,运行下面这句话
           keytool -genkey -keystore myKeystore -alias jwstest
           它将会提示你输入用户名、密码等,不用理它,按照提示随便输入即可,但一定要记住密码。运行结束它将会在当前路径下创建名为myKeystore的文件。
        C.如果你想察看一下刚才生成的myKeystore文件的内容,可以使用下面这句话,再输入密码:
           keytool -list -keystore myKeystore
           显示出来应该类似如下:                
              Keystore type: jks
              Keystore provider: SUN
              Your keystore contains 1 entry:
              jwstest, 2006-7-12, keyEntry,
              Certificate fingerprint (MD5): D7:CE:DD:5C:EC:78:92:B3:9E:51:88:A6:1E:4E:94:9C
        D.对你需发布应用程序的jar包进行签名,运行下面这句话:
           jarsigner -keystore myKeystore yourtest.jar jwstest
           其中yourtest.jar是你的jar包名,你需要修改它,别的就不必修改了。运行时会提示你输入密码,就是你刚才在生成myKeystore文件时设定的密码。
    6.部署应用程序。
        把已经经过签名的jar包拷入Web工程的目录下(注意:不能拷到WEB-INF目录下!)
 
三.JNLP文件
    1.下面我们来编写JWS的核心配置文件JNLP,有了它,才能将以上各部分联系起来,真正让JWS运转起来。JNLP文件符合标准的XML语法,实质就是一个XML文件。当然,编写它
的最好方式是对已写好的JNLP进行改写。JWSTest.jnlp示例如下:
xml 代码
  1. <!---->xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <jnlp spec="1.0+" codebase="http://192.168.1.106:8000/jwsTest/" href="jwsTest.jnlp">  
  4.     <information>  
  5.         <title>JWS Testtitle>  
  6.         <vendor>Silent Wongvendor>  
  7.         <homepage href="http://silent" />  
  8.         <description>JWS Testdescription>  
  9.         <icon kind="png" href="eclipse48.png" />  
  10.         <offline-allowed />  
  11.     information>  
  12.     <security>  
  13.         <all-permissions />  
  14.     security>  
  15.        
  16.     <resources>  
  17.         <jar href="startup.jar" />  
  18.         <jar href="plugins/MyPlugin_1.0.0.jar" />  
  19.         <jar href="plugins/org.eclipse.core.commands_3.1.0.jar" />  
  20.         <jar href="plugins/org.eclipse.core.expressions_3.1.0.jar" />  
  21.         <jar href="plugins/org.eclipse.core.runtime_3.1.2.jar" />  
  22.         <jar href="plugins/org.eclipse.help_3.1.0.jar" />  
  23.         <jar href="plugins/org.eclipse.jface_3.1.1.jar" />  
  24.         <jar href="plugins/org.eclipse.osgi_3.1.2.jar" />  
  25.         <jar href="plugins/org.eclipse.swt.win32.win32.x86_3.1.2.jar" />  
  26.         <jar href="plugins/org.eclipse.swt_3.1.0.jar" />  
  27.         <jar href="plugins/org.eclipse.ui.workbench_3.1.2.jar" />  
  28.         <jar href="plugins/org.eclipse.ui_3.1.2.jar" />  
  29.            
  30.         <property name="eclipse.product" value="MyPlugin.MyPlugin"/>  
  31.            
  32.     resources>  
  33.        
  34.     <resources os="Mac">  
  35.         <j2se version="1.5+" java-vm-args="-XstartOnFirstThread"/>  
  36.     resources>  
  37.     <resources os="Windows">  
  38.         <j2se version="1.5+"/>  
  39.     resources>  
  40.     <resources os="Linux">  
  41.         <j2se version="1.5+"/>  
  42.     resources>  
  43.        
  44.     <application-desc main-class="org.eclipse.core.launcher.WebStartMain">  
  45.         <argument>-nosplashargument>  
  46.     application-desc>  
  47. jnlp>  

 


    2.部分JNLP的关键语法 
        <jnlp>元素
            spec:必须是1.0及以上版本,这里用1.0+,不需修改。
            codebase:资源的URL,是JNLP指向各连接的起始处,需自行修改。
            Href:JNLP文件相对codebase的存放位置,和JNLP文件的全名,需自行修改。

        <infomation>元素
            Title:发布的应用程序简单标题,需自行修改。
            Vendor:发行商信息,可以写上你的大名,需自行修改。
            Homepage:存放有关应用程序的相关文档的URL,如help文件等,可有可无。
            Description:对应用程序的描述,可以有多对<description></description>,可有可无。
            Icon:用户下载你的应用程序后,在JWS里显示的图标的URL,应是gif或jpeg格式。需自行修改。
            Offline-allowed:选择项,允许用户离线运行应用程序,一般都会有,不用修改。

        <security>元素
            选择项,如果没有指明<security>,默认是不允许应用程序访问用户的本地资源,即应用程序是沙箱运行。
            如果设定为<all-permissions/>,则表示允许应用程序访问用户的本地资源。一般都会设定此值。

        <resource>元素
            <j2se version = 指定jdk版本>
            <jar href = 指定需发布的应用程序的jar包存放的位置>
        
        <application-desc>元素
            main-class:应用程序运行启动的主类
            <argument>:应用程序运行时的参数,可以有多个,每一个参数用一对<argument>参数</argument>。

四.Jsp页面 
    1.编写用于Web访问的页面加入如下:
        <%
          String path = request.getContextPath();
          String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
        %>
        <a href="<%=basePath + "jwsTest.jnlp"%>">launch</a>

五.完整发布和测试
    前面我们已经准备好了需发布的应用程序的jar包,也写好了用来访问的jsp文件和服务器端的核心jnlp文件。
    至此,我们已经完成得七七八八了,剩下只需将Web工程发布到tomcat上,再打开IE......

(注意: 因为本网站Formatter的问题,帮将"<" ">" 改为 < >)

JavaWeb开发入门(二)

web应用程序web应用程序指供浏览器访问的程序,通常也简称为web应用。 web应用:例如有a.html 、b.html…..多个web资源,这多个web资源用于对外提供邮件服务,此时应把这多个w...
  • yerenyuan_pku
  • yerenyuan_pku
  • 2016年07月06日 08:30
  • 1765

Java Web Start入门

 Java Web Start(以下简称JWS)是SUN提供的一种通过Web来部署和发布Java 程序的新技术,它既可以用来发布Application,也可以用来发布Applet,它获去年全球Java...
  • sole_ghost
  • sole_ghost
  • 2007年04月03日 13:53
  • 718

Java Web Start 开发向导

前言: 在java开发的早期,重点被放在了客户端开发。语言中对于applet和安全下载的支持对于万维网(WWW)的发布看上去是个不错的主意。但是现实是java最大的成功在于服务器端,java的强大功能...
  • fanxiaobin577328725
  • fanxiaobin577328725
  • 2016年11月10日 17:14
  • 1785

JAVA WEB START 在项目中遇到的问题及解决

  1 JRE运行环境自动安装问题; 在启动页面加入如下脚本:    00805F499D93"   codebase="/jnlp/j2re-1_4_2_12-windows-i586-p.exe"...
  • danning
  • danning
  • 2007年01月24日 09:29
  • 1449

什么是 Java Web Start 软件以及如何启动它

Java Web Start 软件Java Web Start 软件使您可以从 Web 下载和运行 Java 应用程序。Java Web Start 软件: 提供一种单击一次即可激活应用程序的便捷方法...
  • aw_vip
  • aw_vip
  • 2008年12月10日 10:21
  • 1293

Java Web Start 实例讲解

 1 新建一个java project,命名为:webstart(名字可能随便取),加入程序:package jws; import javax.swing.*; public class...
  • hz_chenwenbiaoTMB
  • hz_chenwenbiaoTMB
  • 2010年07月18日 13:57
  • 4239

Jenkins的配置从节点中默认没有Launch agent via Java Web Start,该如何配置使用

Jenkins的配置从节点中默认没有Launch agent via Java Web Start,如下图所示,而这种启动方式在Windows上是最方便的。 如何设置才能让出来呢? 打开"...
  • e295166319
  • e295166319
  • 2017年02月09日 14:39
  • 3431

Java Web Start实例

JWS让用户可以下载服务器端的Java Application到本机运行,并且没有安装、配置等繁琐的操作 JWS的运行原理:浏览器运行Java Application的链接指向的不是程序本身,而是一个...
  • u013288707
  • u013288707
  • 2017年03月08日 14:38
  • 603

使用Java Web Start部署java application

使用Java Web Start部署java application Java Web Start(以下简称JWS)是SUN提供的一种通过Web来部署和发布Java 程序的新技术,它既可以用来发布Ap...
  • wonder4
  • wonder4
  • 2006年05月29日 17:37
  • 4130

Java Web Start 入门基础教程

关于Web Start的JNLP Specification可以到sun网站http://java.sun.com/products/javawebstart/download-spec.html下载...
  • vvggsky
  • vvggsky
  • 2007年03月13日 14:46
  • 835
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java Web Start 入门(二)
举报原因:
原因补充:

(最多只允许输入30个字)