需要用applet读取客户端本地文件,已经签名了;html也用HtmlConverter转过了,applet可以正常运行,只是在读取本地文件时依然报错如下
java.security.AccessControlException: access denied (java.io.FilePermission C:\test.txt read)
不知道为什么签过名还是无法读取本地文件
修改客户端jre包里的java.security那个方法就算了,因为不可能让每个用户都去修改那个文件
希望高手能指点一下,多谢这个问题想必大家看到过很多次了?但是根本就没什么解决方法,都是抄的一样的帖子,这里我再拿出来,希望大家可以帮个忙

解决方案 »

  1.   


    没有权限访问这个文件!-------------------------------------------------------------------------------------
    applet运行在“沙盒”中,不能够随便的访问用户本机的文件(即使像你说的那样已经签名过)!
    反过来假设一下:如果可以随意的访问用户本机的文件,那么当访问某一网站时,用户的重要数据(文件)就完全暴露在别有用心的人写的applet下,很容易被窃取。applet能够读取用户本机的文件,但前提是要进行显示的授权:
    通过浏览的方式来指定某个文件(就像文件上传时的浏览),这时就可以读取该文件了。至于能不能像楼主期望的那样可以随意读取,个人觉得这个不太可能,还请高手分析。
      

  2.   

    问题已解决:
     原来是我在js代码中调用了applet中的方法,这样其实还是js去操作本地文件,所以applet中采用线程来实现可以解决不通过js直接调用了
      

  3.   

    楼主 能不能告诉我你就改了什么吗?我也是写了一个applet 扫描用户的本地文件 你说的用线程是怎么解决的? 求赐教