使用applet读取客户端的IC卡,转载文章然后自己整合了一下,方便以后查阅
一、压缩你的class类文件为jar包
1.假设你的需要压缩的类文件存在的包为:cn.mbq.test1和cn.mbq.test2
2.进入你的classes目录(这里是在MyEclipse平台里建一个web项目,类编译后的文件是存放在classes文件夹里的),在DOS窗口中执行命令:jar cf mytest.jar cn.mbq.test1 cn.mbq.test2
这一步其实可以使用MyEclipse来打成jar包,只选择需要的那些类就可以了。3.执行命令后你会在当前目录中找到mytest.jar文件,这个就是刚才生成的档案文件。你可以修改它的后缀为rar,然后使用winrar压缩程序打开它查看看是否正确。
(说明:正确的方法应该是 jar cf mytest.jar cn/mbq/test1 cn/mbq/test2 )二、使用keytool工具生成密匙库
1.keytool工具位于${java_home}/bin目录下;
2.在DOS窗口中执行命令:keytool -genkey -keystore mytest.store -alias mbq
注意:mytest.store 是你的密匙库的名称,可以随意修改,后缀请不要修改!
如果需要可以添加参数DOS命令
keytool -genkey -keystore mytest.store -alias mbq -validity 3650-validity 3650 表示的是有效期是3650天,默认情况是六个月有效期。
mbq 为别名,这个也可以改成自己的名称
3.执行上述命令后,DOS窗口中会提示你输入keystore的密码、你的姓名、组织单位等等信息。这里要注意的是输入密码请记住,后面要用到的。在最后,我们输入y确认信息。然后再直接回车设置mbq的主密码和store密码一致即可! 三、使用keytool工具导出签名时用到的证书
1.在DOS窗口中执行命令:keytool -export -keystore mytest.store -alias mbq -file mbq.cert
注意:mytest.store 就是第二步生成的密匙库名称
mbq 也是在第二步中我们指定的别名
mbq.cert 为我们生成的证书的名称,可以自己修改名称,注意后缀不要改
2.命令执行成功,我们会在当前目录下找到一个mbq.cert文件,这个就是我们刚才生成的证书。 四、使用jarsigner工具签名jar压缩文档
1.jarsigner工具位于${java_home}/bin目录下;
2.在当前DOS窗口中执行命令:jarsigner -keystore mytest.store mytest.jar mbq
注意:mytest.store 就是我们在第二步中生成的密匙库名称
mytest.jar 就是我们这第一步压缩的jar文档
mbq 是提供者的名称,我们这里设置为我们的别名
修改客户端的程序是需要重新打包和签名。五、创建mytest.policy文件
1.在当前目录下创建一个mytest.policy文件,其内容如下:
keystore"file:mytest.store","JKS";
grant signedBy"mbq"
{
permission java.io.FilePermission"<<ALLFILES>>","read";
permission java.net.SocketPermission "localhost:100","connect,resolve";
};
2.在%JAVA_HOME%/jre/lib/security/java.security 中
policy.url.1=file:${java.home}/lib/security/java.policy
policy.url.2=file:${user.home}/.java.policy后加上
file:${path }/mytest.policy path是mytest.policy的路径如:file:h:/apache-tomcat-6.0.41/webapps/storageCar/view/forkliftLogin/mytest.policy 在jsp使用
<APPLET name="obj_applet" code="RfidApplet" CODEBASE="."
archive="ReadRFID.jar,java+socket++tcp_ip+sdk.jar,commons-codec-1.7.jar"
WIDTH=0 HEIGHT=0 >
<param name="ip1" value="${ip1}">
<param name="port1" value="${port1 }">
</APPLET>
但是浏览器提示阻止运行,解决办法 打开控制面板 --> java --> 安全 -- 编辑站点列表,加入applet使用的url,保存后重启浏览器
js调用方法
var result= document.obj_applet.classMethod();查了一些资料说使用object标签会自动在客户端下载jre,用${java_home}/bin/HtmlConverter下的工具自动把applet标签转为object标签,但是我没找到不知道是jdk8取消了还是咋滴。
现在能在jsp中运行了,但是浏览器会弹出警告解决办法
六. 找到jre所在的路径,进入${JAVA_HOME}/jre/lib/security目录下 七. 将生成的cert证书复制到${JAVA_HOME}/jre/lib/security目录下
八. 在${JAVA_HOME}/jre/lib/security目录下执行
keytool -import -alias hp -keystore cacerts -file hp.cer
执行这个命令时,会提示输入密码,这个密码是cacerts文件的默认密码:changeit
九. 在Java控制台中可以查看到这个证书
安全 -- 管理证书
java 标签指定切点
转载文章标签 java 标签指定切点 java applet jar java JAVA 文章分类 Java 后端开发
上一篇:kvm突然暂停
下一篇:查看db2执行语句错误日志
-
切点?
切入点是一个或一组连接点,通知将在这些位置执行。可以通过表 入点。
面试题 连接点 java