如何在我的 Java Applet 上运行图像而无需签名?

Posted

技术标签:

【中文标题】如何在我的 Java Applet 上运行图像而无需签名?【英文标题】:How can I run images on my Java Applet without having to sign it? 【发布时间】:2014-05-11 19:08:32 【问题描述】:

我是 Java 编程新手,在我看来,他们让这个 Applet 签名变得比它需要的更加困难......没有网站可以直接说明如何做到这一点,它给人的感觉是很费时间。

问题是当我尝试使用drawImage 函数在我的Applet 上运行图像时,我不断收到“拒绝访问”消息。

有人告诉我Class.getResourceAsStream 会有所帮助,但我很难找到有关如何为图像精确实现此功能的信息。还有一个问题是我正在使用 NetBeans,some of this 我发现的信息超出了我的理解范围,或者不符合我的需要。

这是我正在尝试运行的程序:

import java.applet.*;
import java.awt.*;

public class JavaProject extends JApplet

    Image img;

    public void init()
    
        img=getImage(getDocumentBase(),"/Image.jpg");
    

    public void paint(Graphics g)
    
        super.paint(g);

        g.drawImage(img,20,20,this);
    

这是我运行它的 html 文件:

<html>
<head>
    <title> My First Web Page </title>
</head>

<body>
    <applet code="JavaProject.class"  >
    </applet>
</body>
</html>

它适用于形状很好,但我想实现这样的图像,这就是我遇到问题的地方。基本上,我只是想看看Class.getResourceAsStream 如何适应那里的代码,因为上面的代码给了我“拒绝访问”错误。

另外,需要注意的是,我是从文件系统运行它,而不是从 HTTP。

【问题讨论】:

【参考方案1】:

如果您使用的是 Java 7,您现在需要签署小程序:

最重要的是所有 Java 小程序和 Web 使用 Java 插件启动应用程序在被签名的浏览器中运行 具有可信赖的证书,以获得最佳用户体验。爪哇 支持代码签名,但在 Java SE 7u21 之前它是可选的 特征。应用程序代码签名提供了许多安全优势 给用户。

http://www.oracle.com/technetwork/java/javase/tech/java-code-signing-1915323.html

但是,您可以通过 Java 控制面板更改安全设置。 (在 Windows 上,只需开始 > Java > 配置 Java。)在 Java 控制面板中,转到安全选项卡并将安全级别设置为最低(中)。我相信这可以让您在安全提示后运行一个小程序。

【讨论】:

以上是关于如何在我的 Java Applet 上运行图像而无需签名?的主要内容,如果未能解决你的问题,请参考以下文章

Java applet不在AdoptOpenJDK中运行

如何在 HTML 页面加载时使用 JFrames 打开 Applet

java.security.AccessControlException:运行applet时发生

如何在IE11运行Java小程序(Applet)

applet 中的双缓冲是如何工作的?

Java applet RuntimeException:java.lang.NoClassDefFoundError:javax / mail / Authenticator