社区
Java
帖子详情
在applet端写文件的程序,可以在本机器上运行成功,却不能在别的机器上运行,为什么??
ideal2004
2005-03-22 10:27:57
我在applet端写文件的程序,已经可以在自己编写applet文件的机器上运行(我用了使数字签名的方法)在别的机器上运行时,却不行,连提示“是否接收该证书”的对话框都没有出现,请问各位该怎么解决?谢谢
...全文
108
4
打赏
收藏
在applet端写文件的程序,可以在本机器上运行成功,却不能在别的机器上运行,为什么??
我在applet端写文件的程序,已经可以在自己编写applet文件的机器上运行(我用了使数字签名的方法)在别的机器上运行时,却不行,连提示“是否接收该证书”的对话框都没有出现,请问各位该怎么解决?谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
寒舍人
2005-03-23
打赏
举报
回复
已经转载了 n 遍了 希望对你有用
//------------------------------------------------------------
步骤一:(打包class文件)
在命令行中执行以下的语句:jar -cvf MyApplet.jar class
步骤二:(在网页中嵌入Applet)
这个网页的名字叫做FileReaderApplet.html,下面是嵌入Applet部分的写法:
<APPLET
CODEBASE = "."
CODE = "jcomponent.FileReaderApplet.class"
ARCHIVE ="MyClass.jar"
NAME = "TestApplet"
WIDTH = 400
HEIGHT = 300
HSPACE = 0
VSPACE = 0
ALIGN = middle
>
</APPLET>
完成这个步骤后,这个Applet已经可以显示了。但是还不能读写本地的文件系统。
步骤三:(生成证书及签名)
请在命令行环境下执行以下的命令:
1、keytool -genkey -keystore pepper.store -alias pepper
这个命令用来产生一个密匙库,执行完毕后应该在c:/admin中产生一个pepper.store的文件,这里的pepper是我自己的名字,你可以对它进行修改。另外在执行命令的时候还有提示你输入密匙库的密码,这里你一定要记住,否则后面要用的时候无法输入。
2、keytool -export -keystore pepper.store -alias pepper -file pepper.cert
这个命令用来产生签名时所要用的证书,同样这里的pepper也可以换成你自己需要的名字。这个命令执行完后在c:/admin中产生一个pepper.cert的文件。
4、 jarsigner -keystore pepper.store MyApplet.jar pepper
这个命令用上面产生的证书将我们的jar文件进行了签名。
步骤四:(修改文件)
1、 在c:/admin中产生一个名为applet.policy的文件,其内容如下:
keystore "file:c: /admin/pepper.store", "JKS";
grant signedBy "pepper"
{ permission java.io.FilePermission "<<ALL FILES>>", "read";
};
这个文件让由pepper签名的Applet拥有本地所有文件的读权限。
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
在下面添写第三行
policy.url.3=file:c: /admin/applet.policy
完成这个修改后我们在前面创建的applet.policy文件才有效。
步骤五:(转换html文件)
运行前面提到的HTMLConvert工具,将原有的FileReaderApplet.html转化成下面的形式:
<!--"CONVERTED_APPLET"-->
<!-- CONVERTER VERSION 1.3 -->
<OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
WIDTH = 400 HEIGHT = 300 NAME = "TestApplet" ALIGN = middle VSPACE = 0 HSPACE = 0 codebase="http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0">
<PARAM NAME = CODE VALUE = "jcomponent.FileReaderApplet.class" >
<PARAM NAME = CODEBASE VALUE = "." >
<PARAM NAME = ARCHIVE VALUE = "MyApplet.jar" >
<PARAM NAME = NAME VALUE = "TestApplet" >
<PARAM NAME="type" VALUE="application/x-java-applet;version=1.3">
<PARAM NAME="scriptable" VALUE="false">
<COMMENT>
<EMBED type="application/x-java-applet;version=1.3" CODE = "jcomponent.FileReaderApplet.class" CODEBASE = "." ARCHIVE = "MyApplet.jar" NAME = "TestApplet" WIDTH = 400 HEIGHT = 300 ALIGN = middle VSPACE = 0 HSPACE = 0 scriptable=false pluginspage="http://java.sun.com/products/plugin/1.3/plugin-install.html"><NOEMBED></COMMENT>
</NOEMBED></EMBED>
</OBJECT>
<!--
<APPLET CODE = "jcomponent.FileReaderApplet.class" CODEBASE = "." ARCHIVE = "MyApplet.jar" WIDTH = 400 HEIGHT = 300 NAME = "TestApplet" ALIGN = middle VSPACE = 0 HSPACE = 0>
</APPLET>
-->
<!--"END_CONVERTED_APPLET"-->
大家不要看到这里的写法很复杂,但是这些都是由HTMLConvert工具自动实现的。这个工具有命令行和图形界面两种运行方式。
好了,现在这个Applet可以运行读写文件的功能了。如果你要考虑在Internet上实现这个Applet,那么你也不需要在所有的客户端均做上面的步骤,你只需要在你的服务器上创建一个目录,例如c:/admin,将这个目录映射为www.testApplet.com/admin。这里的www.testApplet.com是一个假定的网址,将pepper.cert、pepper.store、FileReaderApplet.html、MyApplet.jar以及applet.policy放在这个目录中,然后修改applet.policy文件如下:
keystore "http:// www.testApplet.com/admin/pepper.store", "JKS";
grant signedBy "pepper"
{ permission java.io.FilePermission "<<ALL FILES>>", "read";
};
3、 而每个客户端仅仅需要修改一下它们的${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
policy.url.3= http:// www.testApplet.com/admin/applet.policy
当然每个客户端还是需要安装JRE的,不过现在的浏览器安装时都已经自动安装了。
yadg
2005-03-22
打赏
举报
回复
贴错了http://forum.java.sun.com/thread.jspa?messageID=3154381
yadg
2005-03-22
打赏
举报
回复
你看看这个http://community.csdn.net/Expert/TopicView.asp?id=3870196,看能不能找出办法来。
yadg
2005-03-22
打赏
举报
回复
哈哈,同病相连啊。我也是,大家看看我的问题http://community.csdn.net/Expert/TopicView.asp?id=3870196
说透
Applet
的数字签名之1——
Applet
及其
运行
文章目录
Applet
介绍rt.jar是什么
Applet
的极简实例
Applet
运行
方式开发环境:Eclipse
运行
正式环境: 打包
运行
命令行打包问题解决区在Eclipse中
Applet
运行
显示为方块
Applet
应该已经是一个日落西山的技术,其
运行
机制与Flash异曲同工,其陨落的原因与速度也基本步调一致。但其技术本身还是有一些可以借鉴的地方,这里着眼其数字签名的部分以作为Web安全的佐证之一。 ...
java
applet
wiki_
Applet
Applet
Applet
(小应用
程序
)采用Java创建的基于HTML的
程序
。浏览器将其暂时下载到用户的硬盘上,并在Web页打开时在本地
运行
。一般的
Applet
只能通过
Applet
viewer或者浏览器来
运行
,一般的Java
程序
通过继承
Applet
类也可以嵌入网页
运行
。含有
Applet
的网页的HTML
文件
代码中必须带有<
applet
>和</
applet
>这样一对标记,当支持Java的网络浏览器遇...
什么是
applet
applet
是一种Java
程序
。它一般
运行
在支持Java的Web浏览器内。因为它有完整的Java API支持,所以
applet
是一个全功能的Java应用
程序
。 如下所示是独立的Java应用
程序
和
applet
程序
之间重要的不同: Java中
applet
类继承了java.
applet
.
Applet
类
Applet
类没有定义main(),所以一个
Applet
程序
不会调用main()方法...
java实验报告之
applet
(小
程序
)
一.实验目的与要求 1.了解java
Applet
基本框架结构、生命期。 2.了解
Applet
与HTML网页之间的应用关系。 3.了解HTML向
Applet
传递参数。 二、实验内容 2.1实验问题及结果 <1>实验问题:设计如下小应用
程序
,完成界面功能。需要完成的界面如下图所示: 图一:实验界面图 <2>实验步骤: (1)在编辑区编译java源
文件
,形成类
文件
.class...
java
applet
教程_教你构建第一个Java
Applet
程序
介绍Note: 在你开始本教程之前,你必须下载downloaded 并安装installed Java SE Development Kit。Java
applet
s像Java应用
程序
一样,它们的建立都是遵循相同的三个步骤—编
写
,编译及
运行
。不同 的是,它们是在一部分网页上
运行
,而不是在你的桌面上
运行
。本文的主要目的是创建一个简单的Java
applet
. 为了达到这一点要遵循以下三个基本步骤:1...
Java
51,408
社区成员
86,093
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章