java web start实现关键问题(二)

原创 2003年07月02日 16:24:00
 
** 下载资源错误
 
 在使用Java Web Start的时候可能会出现"下载资源错误",大致的出错信息如下:
 
  *******************************************************
   JNLPException[category: Download Error : Exception:
   java.io.IOException:
   rename failed in cache : LaunchDesc: null ] at.....
  *******************************************************
 
  这个错误的原因是因为每次调用Java Web Start都会到server上查找程序是否更新,然后将程序下载到本地的java web start目录下的cache目录中,如果cache中
  已经有同名文件,而且该文件正在被使用,那么新下载的文件就会出现 rename failed错误,而且手工去删除本地的文件还会报错:文件正被使用!,这里涉及到Java
  Web Start中的sign机制,可能对每个jar文件都需要标记,有的时候会在任务管理器中看到javaw.exe在运行,将该程序终止后就可以将本地的jar文件删除掉,说明这
  些本地文件可能还保留着文件锁定吧!有时即使将Task Manager中将所有的java程序都kill掉还是会出错,必须要注销windows才可以,不知道是不是Java Web Start
  自身的问题.
 
** argument
    如果需要给*.jar文件传递参数,可以用如下代码:
   <application-desc main-class="XBFrame"/>
       <argument>-port</argument>
       <argument>1008</argument>    ' 要注意-port 和1008是两个参数,要分开写.
    </application-desc>
 
** jws console
    有的时候还需要看到*.jar中System.out.print语句输出的信息,就要打开jws的console,可以在jws manager 中的首选项中设置.
 
 
** security
    java web start中对本地文件操作、访问远程数据库等操作都进行了安全限制,如果要实现这些操作,一般要在jnlp中增加代码:
     <security>
        <all-permissions/>
     </security>
    以上代码表示允许所有的操作,但要实现这一点,还需要对*.jar文件进行sign操作,也就是安全签名,可采用
    jdk中自带的keytool和jarsigner工具来进行签名,步骤如下:
 
** keytool
  例如:keytool -genkey -alias MySelf -keypass 888888
         ' -alias 表示产生一个化名,要记住这个化名,后面要用到
         ' -keypass 输入一个密码就可以了
 
    一般会产生keystore文件,keytool还有一些其他选项,可以在console中查看帮助.
 
** jarsigner
    例如:jarsigner -alias MySelf ***.jar
    jarsigner表示对jar程序进行签证.只有经过签证的程序才可以设置all-permissions属性。
 
** 根认证
    jws manager中的首选项中还可以选择根认证.
 
**  Certificate
    jarsigner中默认采用了RSA和DSA的加密算法,有些公司也希望能自己购买Certificate文件,不过两种方式都应该可以运行,一般第一次运行java web start程序
    时会弹出对话框要用户确认是否承认该认证。
 
**  最后说明
  因为对JWS也是一个新手,所以很多问题也只是表面的认识,如果有表达不当或理解肤浅的地方,请多包涵.
 
 

Java Web Start 开发向导

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

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 在项目中遇到的问题及解决

  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
  • 3429

Java Web Start实例

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

使用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

Jenkins 2.19.4默认没有Launch agent via Java Web Start,可通过以下来设置:

Jenkins 2.19.4默认没有Launch agent via Java Web Start,可通过以下来设置: 1. 打开"系统管理"——"Configure Global Secu...
  • jgw2008
  • jgw2008
  • 2017年08月14日 11:05
  • 270

Java Web Start 入门(二)

一.搭建支持JWS的Web站点     1.你的Tomcat已经正常运转     2.找到TomcatHOME/conf下的web.xml文件,在其中添加 application/x-ja...
  • rdhj5566
  • rdhj5566
  • 2012年07月21日 09:13
  • 709
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java web start实现关键问题(二)
举报原因:
原因补充:

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