1 开发applet程序,编译成jar包
2 给jar包做数字签名:
(1)、用keytool生成密钥:
keytool -genkey -keystore myapplet.keystore -alias myapplet-validity 365
将在当前目录下生成一个key.keystore文件, -alias后接的是别名,-validity后面接的是该证书有效天数,这里365表示1年。(用这个证书签名的程序1年内有效,不加时默认为90天)。
(2) . 生成证书
keytool -export -keystore myapplet.store -alias myapplet -file myapplet.cert
(3)、用jarsigner来用此密匙为JAR签名:
jarsigner -keystore myapplet.keystore test.jar myapplet
这样kk.jar文件就被签名了,打开jar文件中manifest目录下可以看到多了两个文件,*.sf和*.dsa文件
(4)、验证jar文件是否已签名
jarsigner -verbose -verify test.jar
3 生成策略文件
新建文件: myapplet.policy 文件内容如下:
keystore"myapplet.keystore","JKS";
grantsignedBy"myapplet"
{
permission java.io.FilePermission"<<ALLFILES>>","read";
#permission java.security.AllPermission;
};
4 将签名过的jar包,证书,密钥,策略文件,一起放到文件夹下,同时将jar依赖的所有jar包必须包含在applet里
5 html里写法:
<APPLET CODE = "com.wiscom.applet.upload.MyApplet.class" JAVA_CODEBASE = "./applet" ARCHIVE = "myapplet.jar,commons-logging-1.1.1.jar,commons-net-3.0.1.jar" WIDTH = "400" HEIGHT = "300" ALT = "文件上传applet小程序">
<PARAM NAME = "host" VALUE="172.16.41.27">
<PARAM NAME = "port" VALUE="21">
<PARAM NAME = "userName" VALUE="cc">
<PARAM NAME = "password" VALUE="cc">
<PARAM NAME = "acceptAllFileFilterUsed" VALUE="true">
<PARAM NAME = "isDirectorySelectionEnabled" VALUE="true">
<PARAM NAME = "isFileSelectionEnabled" VALUE="true">
<PARAM NAME = "fileNameExtension" VALUE="">
<PARAM NAME = "isFileHidingEnabled" VALUE="false">
<PARAM NAME = "isMultiSelectionEnabled" VALUE="true">
<PARAM NAME = "maxFileSize" VALUE="2147483648">
</APPLET>
可用HTMLConvertor(jdk自带) 命令转换文件,可生成适应多浏览器的html