java网络加载协议JNLP的应用

    JAVA WEB Start技术我们在网络上很多地方看到过,包括一些自动更新功能也是用这项技术。
    jnlp是什么?是java提供的一种让你可以通过浏览器直接执行java应用程序的途径,它使你可以直接通过一个网页上的url连接打开一个java应用程序。它是Java Network Launching Protocol的缩写,意思是java网络加载协议,如果你的java应用程序以jnlp 的方式发布,以后版本升级后,不需要再向所有用户发布版本,只需要更新服务器的版本,这就相当于让java应用程序有了web应用的优点了。
    我用tomcat服务器做了一个JNLP的功能,下边说说。
    1、jar文件打包
       用swing做了一个jar文件,运行效果如下图:


    2、编写JNLP部署文件
      
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <jnlp spec="1.0+"
  3. codebase="http://localhost:8080/examples"
  4. href="http://localhost:8080/examples/swttest.jnlp">
  5. <information>
  6.     <title>Swing-Test - Hello World</title>
  7.     <vendor>SwingTest</vendor>
  8.     <homepage href="http://localhost:8080"/>
  9.     <icon href="execute.gif"/>
  10. </information>
  11. <resources>
  12.     <j2se version="1.5+"/>
  13.     <jar href="swttest.jar"/>
  14. </resources>
  15. <security>
  16.     <all-permissions/>
  17. </security>
  18. <application-desc main-class="net.dqpi.WindowFaceForm"/>
  19. </jnlp>
swttest.jnlp是部署文件名,codebase是部署文件所在目录,href指向部署文件swttest.jnlp。
information是对jar文件的描述信息。
resources描述资源信息
...

    3、为jar文件签名
       先在命令行用keytool产生一个keystore文件.
       keytool -genkey -keystore swttest.keystore –alias swttest
       命令操作的过程是
       java网络加载协议JNLP的应用_第1张图片

    4、web部署
        我是用的tomcat6.0.18,把要部署的JNLP文件链接到tomcat的examples下。
        文件目录:D:/ToolKits/apache-tomcat-6.0.18/webapps/examples
        修改index.html文件如下:
        在<li><a href="jsp">JSP Examples</a></li>之后增加如下链接:
       
  1. <li><a href="swttest.jnlp">Lanuch JNLP</a></li>

   
        启动tomcat ,在浏览器地址栏输入:http://localhost:8080/examples/,运行结果如下图:
java网络加载协议JNLP的应用_第2张图片
      点击Lanuch JNLP,运行如下图
java网络加载协议JNLP的应用_第3张图片

     java网络加载协议JNLP的应用_第4张图片


java网络加载协议JNLP的应用_第5张图片


java网络加载协议JNLP的应用_第6张图片


java网络加载协议JNLP的应用_第7张图片


详细请参考官方:http://java.sun.com/developer/technicalArticles/Programming/jnlp/

你可能感兴趣的:(java,tomcat,网络,swing,jar,resources)