0

每个人!

我有一个签名的小程序(在 html 中命名为结果),其简单功能如下:

    public  void killApplet() 
    {   
        AccessController.doPrivileged(new PrivilegedAction<Object>(){
           //@Override
           public Object run() {
           // kill the JVM
           System.exit(0); // or any other line here
           String str = "any string";
           return null;
        }
    }); 
    }

Java 脚本代码如下:

    function exec_java() {
        document.result.killApplet();
    }

当我单击按钮执行 java 函数时:

<button type="button" id="buttontest" onclick="exec_java()">test</button>

它显示如下异常:

java.security.AccessControlException: access denied

(java.io.FilePermission C:\Program Files\Java\jdk1.6.0_18\bin read)

我正在使用带有 IE 版本的 Windows XP,如下所示:

即 7

愿景:7.0.5730.13

任何专家,给我一个线索如何使这个异常消失?此外,这里奇怪的是我可以毫无问题地调用一个简单的函数,如下所示:

       public int getNumberOfLines(){
            return number_of_lines;
       }

任何帮助,将不胜感激!PS:不能发布任何图片因为显然我是“新人”!有人有工作样本吗?

    AccessController.doPrivileged(new PrivilegedAction<Object>()

谢谢!

吴碧

4

1 回答 1

0
// kill the JVM
System.exit(0);

小程序是网页中可能托管其他小程序的访客。召唤System.exit(n)就像客人烧毁了宾馆。 不要那样做! 因此,即使是受信任的小程序也不允许调用该方法。

结束小程序的更好方法是调用:

showDocument(thanksForUsingOurAppletURL);
于 2012-03-04T07:28:12.270 回答