一、JNLP介绍:
在java开发的早期,重点被放在了客户端开发。语言中对于applet和安全下载的支持对于万维网(WWW)的发布看上去是个不错的主意。但是现实是java最大的成功在于服务器端,java的强大功能和适应性赢得了服务器端开发者的心。同时,客户端的开发落后了。棘手的开发问题限制了applet的效用,开发者被迫转向基于浏览器的瘦客户端。 JavaNetwork Launching Protocol (JNLP,java网络加载协议) 承诺改变这个现状。通过JCP(Java Community Process)的JSR-56的开发, JNLP解决了很多先前用java开发针对客户端的功能的问题。一个JNLP客户端是一个应用程序或者说服务,它可以从宿主于网络的资源中加载应用程序。如果你使用JNLP打包一个应用程序,那么一个JNLP客户端能够: 为该应用探测,安装并且使用正确版本的JRE(java运行时环境) 从浏览器或者桌面加载应用程序 当新版本的应用出现时自动下载最新的版本。 为了加速启动速度在本机缓存应用程序需要的类 可以作为applet或者应用程序运行 在必要的情况下下载原始的库 以安全的方式使用诸如文件系统这样的本机资源 自动定位和加载外部依赖资源二、JNLP文件的具体说明
三、JNLP部署应用 (1)编写相关应用,打包成一系列jar; (2)根据jnlp文件说明修改相应的jnlp内容,修改相应的url和jar; (3)部署jnlp文件和jar到相应的web容器; (4)编写访问网页,即可使用该应用〔亦可下载jnlp文件使用jws运行应用〕;四 、补充 如果jar需要访问本地文件资源,需要为你的jar文件签名 先在命令行用keytool产生一个keystore文件. keytool-genkey -keystore you.keystore –alias youApp 命令行用jarsigner签名,当然这时候需要生成keystore时的密码 jarsigner-keystore you.keystore appTest.jar youApp 重新部署即可实例: