首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java : AccessControlException又来了

Java : AccessControlException又来了
EN

Stack Overflow用户
提问于 2012-05-24 07:09:44
回答 1查看 3.4K关注 0票数 1

再次发出签名小程序的特权。

我希望我的自签名小程序从本地驱动器中删除一个文件,但是我得到了例外情况:

代码语言:javascript
复制
java.security.AccessControlException: access denied
  (java.io.FilePermission /Users/me/tmp.txt delete)

在这里,我引用删除:

代码语言:javascript
复制
    public void deleteFile( String path )
    {
        AccessController.doPrivileged( new Deleter( path ));
    }

这个类删除文件:

代码语言:javascript
复制
class Deleter implements PrivilegedAction {
    public Deleter( String path ) {
        m_path = path;
    }

    public Object run()
    {
        File file = new File( m_path );
        file.delete();
        return null;
    }

    private String m_path;
};

HTML代码是:

代码语言:javascript
复制
<APPLET CODE="HelloWorld.class" ARCHIVE="SignedHelloWorld.jar" WIDTH=600 HEIGHT=25>
<PARAM NAME="MAYSCRIPT" VALUE="true">
</APPLET>

解决:

我需要添加策略(在OS下):

代码语言:javascript
复制
cat >> ~/.java.policy

grant {
  permission java.io.FilePermission "<<ALL FILES>>", "delete";   
};
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-24 07:21:18

要授予权限,applet需要一个策略文件。这定义了他们可以对用户系统做什么。您可以找到更多信息,这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10732779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档