大家好!
我有一个签名的applet(用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,如下所示:
IE 7
愿景:7.0.5730.13
任何专家,并告诉我如何使这个例外消失? 另外,这里奇怪的是我可以调用一个没有问题的简单函数,如下所示:
public int getNumberOfLines(){
return number_of_lines;
}
任何帮助将不胜感激! PS:不能发布任何图像显然我是'新'! 有没有人使用过工作样本?
AccessController.doPrivileged(new PrivilegedAction<Object>()
谢谢!
吴碧答案 0 :(得分:0)
// kill the JVM
System.exit(0);
applet是可能托管其他applet的网页中的guest虚拟机。致电System.exit(n)
就像烧毁宾馆的客人一样。 不要这样做!因此,即使是受信任的applet也不允许调用该方法。
结束小程序的更好方法是致电:
showDocument(thanksForUsingOurAppletURL);