Java Web Start入门教程 - 编程入门网
姓名/公司/国家之类的信息:
如果不想一步步输入上面信息,可以直接输入下面命令执行: keytool -genkey -alias mykey -keystore mykeystore -keypass mypass -storepass mykeystorepass -validity 80 -dname "cn=Henry Zhou, ou=JavaSoft, l=SZ, S=JS, o=Lively, c=CN" -dname 参数说明如下: CN=commonNameOU=organizationUnitO=organizationNameL=localityNameS=stateNameC =country 4 .执行完毕在WEB-INF/classes目录下生成一个名mykeystore的密钥文件,下面要用此密钥文件对jar文件进行加密: jarsigner -keystore mykeystore helloworld.jar mykey helloworld.jar mykey :指定要签名的jar文件和密钥的别名 运行命令后会提示输入密钥密码和密钥数据库密码: 签名者证书将在六个月内过期。 由于安全原因,在上面的命令中无法指定密钥密码和密钥数据库密码,即使运行: jarsigner -keystore mykeystore helloworld.jar mykey -keypass mypass -storepass mykeystorepass 仍然会提示输入密钥密码和密钥数据库密码。 注: 其中keytool的详细参数说明可以在sun网站上查询 http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html 其中jarsigner命令行的详细参数可以在sun网站上查询http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/jarsigner.html 5. 执行后在helloworld.jar/META-INF中可以看到生成MYKEY.DSA和MYKEY.SF文件(可以通过-sigFile MKSIGN指定生成 "MKSIGN.SF"和"MKSIGN.DSA")。 其中SF文件包含了JAR中所有类的一个列表,保存了签名过程中使用的摘要算法。DSA文件是一个二进制密匙文件。扩展名是DSA还是RSA取决你使用的签名算法,默认是DSA,可以在keytool参数中指定RSA算法。 6 .把生成的helloworld.jar包拷贝到webstart/jar/jws目录下。 7 .在webstart/jnlp/HelloWorld.jnlp中添加: <security> <all-permissions/> </security> 增加了签名后,如果缺少<security><all-permissions/></security>会报错: 启动/运行应用程序时发生错误。 标题:JNLP Argument Solution 供应商:Lively 类别:安全错误 access denied (java.io.FilePermission E:\test.txt write) 8. webstart 工程放入tomcat/webapps,启动tomcat即可,链接jnlp后发现E盘新建一test.txt文件,测试成功。 注: 网上介绍有时候需要在webstart/WEB-INF/web.xml文件中配置: <mime-mapping> <extension>jnlp</extension> <mime-type>application/x-java-jnlp-file</mime-type> </mime-mapping> 在tomcat5.5.20中测试发现不需要在web.xml中添加此代码。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |