我有一个简单的自签名小程序(使用keytool和jarsigner完成):
public class NetAppletLauncher extends JApplet {
private static final long serialVersionUID = 1L;
public void init() {
exec("notepad c:/hello.txt");
}
public void exec(String command) {
try {
// launch EXE and grab stdin/stdout and stderr
Process process = Runtime.getRuntime().exec(command);
// OutputStream stdin = process.getOutputStream();
InputStream stderr = process.getErrorStream();
InputStream stdout = process.getInputStream();
// "write" the parms into stdin
// stdin.write(arguments.getBytes());
// stdin.flush();
// stdin.close();
// clean up if any output in stdout
String line = "";
BufferedReader brCleanUp = new BufferedReader(new InputStreamReader(stdout));
while ((line = brCleanUp.readLine()) != null) {
//System.out.println ("[Stdout] " + line);
}
brCleanUp.close();
// clean up if any output in stderr
brCleanUp = new BufferedReader(new InputStreamReader(stderr));
while ((line = brCleanUp.readLine()) != null) {
//System.out.println ("[Stderr] " + line);
}
brCleanUp.close();
} catch (Exception exception) {
exception.printStackTrace();
}
}
}
基本上,它的作用是执行“记事本c:/hello.txt”。
然后,我将小程序嵌入html:
<applet id='applet' name='applet' archive='NetAppletLauncher1.jar' code='src.NetAppletLauncher' width='100' height='100' MAYSCRIPT ></applet>
当我访问页面时,JRE启动并询问我是否要启动此applet,以及是否信任它。我按确定。然后记事本开始-应该。没问题
但是,然后我将其添加到HTML页面:
<p class="link" onclick="document.applet.exec('calc');">remote desktop2</p>
现在,当我按此文本时,calc应该开始-对吗?但这给了我:
java.security.AccessControlException: access denied (java.io.FilePermission <<ALL FILES>> execute)
at java.security.AccessControlContext.checkPermission(Unknown Source)
解决了Java中的问题:
exec(getParameter("command"));
然后在JavaScript中:
<script type="text/javascript">
function exec( command ) {
var applet = "<applet id='applet' style='visibility: hidden' name='applet' archive='NetAppletLauncher4.jar' code='src.NetsetAppletLauncher' width='20' height='20' MAYSCRIPT ><param name='command' value='" + command + "' />Sorry, you need a Java-enabled browser.</applet>";
var body = document.getElementsByTagName("body")[0];
var div = document.createElement("div");
div.innerHTML = applet;
body.appendChild(div);
}
</script>
我正在开发一个必须访问访问者文件系统的Java小程序,所以我压缩了我的
问题内容: 嘿,尝试启动正在编写的RMI应用程序时出现提示,我无法弄清楚为什么在默认端口1099或其他动态端口(当前是我的策略文件)上打开此异常时会出现此异常的原因授予所有权限(应用完成后会更改)。 我被困在哪里出了问题,任何帮助都会很有用 我的密码 } 堆栈跟踪 有效端口 65000 我的政策文件 问题答案: 基本上,我很愚蠢,我认为因为Java并不抱怨它找不到.policy文件AOK,所以事实
我已经创建了谷歌应用程序引擎项目,使用预测Api 1.5v。当我在本地均值localhost:8888使用谷歌o2Auth身份验证与客户端ID和客户端运行时,它对我来说工作正常secret.but当我实时运行它时,它会给出一个错误 Java语言安全AccessControlException:访问被拒绝(“java.io.FilePermission”“/base/data/home/apps/s
我正在用Java RMI编写一个客户机-服务器程序,但遇到了一个错误: java.security.访问控制异常:拒绝访问(java.net.SocketPersion127.0.0.1:1099连接,解析) 我的代码如下: 怎么了?
我正在构建一个RMI应用程序,我有以下服务器类。然而,当我在eclipse中运行它时,我得到了以下异常。出了什么问题,我该如何解决?我花了两天时间在网上阅读类似的问题,但我找不到解决方法。我怀疑这与策略文件有关,但我不知道如何使用。另外,如果问题出在我的运行方式上,你能告诉我在eclipse中如何操作吗。 --