【问题标题】:HTML Java applet integrationHTML Java 小程序集成
【发布时间】:2013-06-01 04:46:59
【问题描述】:

我知道这个问题已经被问过很多次了,而且我已经尝试过使用我能找到的所有解决方案,但我无法获得任何成功。我有一个成功运行的 JApplet(我在下面粘贴了层次结构,因为我认为代码本身与问题无关。我可能错了)。根据我找到的解决方案,我还有一些基本的 HTML 代码似乎是正确的。问题是我继续收到同样的错误:


(来源:gyazo.com

而且我不确定我为什么会得到它。是不是因为层次结构中的所有内容都是 .java 文件?

我的 HTML 文件:

<html>
    <head></head>
        <body>
            <applet width="950" height="600" archive="test.jar" code="OneQuestMapgen.OneQuestMapgen.class"></applet>
        </body>
</html>

层次结构:

文件:

任何帮助将不胜感激。非常感谢!

【问题讨论】:

  • 如果您修复了文档结构,您的错误消息是否仍然存在?缺少结束的 和 。
  • 我认为您需要将所有类放在一个包中(而不是默认包) - 只是猜测。
  • 是的,我仍然遇到同样的问题。感谢您指出这一点。我已修复它并添加了 和 ,但我仍然遇到完全相同的错误。
  • 您缺少课程的包限定符 - 请参阅下面的 Ketans 答案
  • 我已经修复了下面指定的 html,但我仍然遇到问题(尽管现在不同了,在原始帖子中进行了更新)。我遇到了安全问题;程序不会运行,因为它说安全设置错误/无效。

标签: java html applet japplet securityexception


【解决方案1】:

你可以试试..

<applet width="950" height="600" archive="test.jar" code="OneQuestMapgen.OneQuestMapgen.class">

【讨论】:

  • code="OneQuestMapgen.OneQuestMapgen.class" 如果是相对路径,则为OneQuestMapgen/OneQuestMapgen.class。完全限定名称 (FQN) 为 OneQuestMapgen.OneQuestMapgencode 属性应该是 FQN。
  • 此代码适用于小程序标签,它解决了我的主要问题,但我仍然遇到安全设置问题。
  • 这看起来像浏览器设置。您检查浏览器设置并关闭安全性。
【解决方案2】:

首先,您需要使用&lt;/head&gt; 关闭您的&lt;head&gt; 标记,并对&lt;body&gt; 标记执行相同操作。

另外,&lt;applet&gt; 标签在 HTML4.01 中一直是 deprecated,在 HTML5 中是不允许的,所以你应该替换为 &lt;object&gt; 标签

因此,例如,如果您在 Chrome 上使用它。它不会工作。

【讨论】:

  • 啊,感谢您指出。但是,小程序仍在运行(尽管不正确),所以我假设它仍然被允许? o_o.
【解决方案3】:

如果您的小程序在同一个目录中。作为 html 文件,您不需要指定它,因为浏览器会在同一目录中搜索文档的位置,如果您在其他地方有它,那么可以拥有应该包含 jar 文件路径的存档。

除此之外,您还应该考虑将您的类所在的包添加到代码属性中,所有这些都由一个点分隔code="OneQuestMapgen.OneQuestMapgen.class"

【讨论】:

    【解决方案4】:

    你的html不应该是这样的吗?

    <html>
    <head></head> <!-- closing the head before the body -->
    <body>
      <applet width="950" height="600" code="OneQuestMapgen.OneQuestMapgen.class" 
        type="application/x-java-applet;jpi-version=6" 
        archive="test.jar">
    </body>
    </html>
    

    在 html5 中应该是这样的

    <object type="application/x-java-applet" height="600" width="950">
      <param name="code" value="OneQuestMapgen.OneQuestMapgen.class" />
      <param name="archive" value="test.jar" />
      Applet failed to run.  No Java plug-in was found.
    </object>
    

    【讨论】:

    • code="OneQuestMapgen.OneQuestMapgen.class" 如果是相对路径,则为OneQuestMapgen/OneQuestMapgen.class。完全限定名称 (FQN) 为 OneQuestMapgen.OneQuestMapgencode 属性应该是 FQN。
    猜你喜欢
    • 2012-08-24
    • 1970-01-01
    • 2012-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-07
    • 2012-01-02
    • 2011-10-15
    相关资源
    最近更新 更多