use*_*697 61 java security applet
我正在尝试从我的浏览器(Chrome)运行这个用Java编写的简单HelloWorld代码:
public class HelloWorld extends JApplet {
public void init() {
try {
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
JLabel lbl = new JLabel("Hello World");
add(lbl);
}
});
}
catch (Exception e) {
System.err.println("createGUI didn't complete successfully");
}
}
Run Code Online (Sandbox Code Playgroud)
我用NetBeans编译它,然后创建了一个WebApplication项目.运行applet 的HTML代码是:
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><applet code="HelloWorld" archive="applet_HelloWorld.jar" width="590" height="530"></applet></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
如果从NetBeans运行applet,它可以工作.但是当我通过双击运行HTML代码时,会从浏览器弹出以下消息:
您的安全设置已阻止本地应用程序运行.
我尝试使用Internet Explorer和Firefox,但没有尝试.
在最后一次更新Java之后,此消息开始出现.问题出在哪儿?
And*_*son 58
阅读Java 7 Update 21详细安全改进后提到..
通过引入的更改,最有可能的是,无论最终用户是自签名还是未签名,都无法运行您的应用程序.
..我想知道这将如何用于松散的类文件 - 所有的"最简单"的小程序.
![]()
您的安全设置已阻止本地应用程序运行
这是一个applet的对话框,当JRE设置为默认的"High"安全设置时,该applet包含从本地文件系统加载的松散类文件.
请注意,JRE的轻微怪癖只产生于第3点.
如果您在互联网上加载这个可调整大小的小程序演示中看到的简单小程序(松散类文件)- 它拥有以下元素:applet
<applet
code="PlafChanger.class"
codebase="."
alt="Pluggable Look'n'Feel Changer appears here if Java is enabled"
width='100%'
height='250'>
<p>Pluggable Look'n'Feel Changer appears here in a Java capable browser.</p>
</applet>
Run Code Online (Sandbox Code Playgroud)
它似乎也成功加载.暗示: -
从本地文件系统加载的Applet现在受到比从Internet或本地服务器加载的安全沙箱更严格的安全沙箱.
自Java 7更新51.
roc*_*tar 21
我今天所面临的同样的问题,我能够通过改变Java控制面板上的安全设置来解决该问题HIGH
至MEDIUM
.
好吧,不建议永久性地将Java安全设置设置为MEDIUM,因为这将允许潜在的恶意软件在您的系统上运行而不会被阻止.因此,我建议您在运行applet后将设置更改为HIGH.
Bur*_*RAS 12
而已!
如果您没有中等安全级别,则应将应用程序添加到" 例外站点列表"(Java控制面板 →" 安全"选项卡).
转到控制面板 → Java控制面板 → 安全选项卡,然后按Edit Site List...按钮.
按Add按钮,插入路径并按Enter键.
按下Continue出现的安全警告.