java - 如何在 HTML 中嵌入 jar

标签 java html applet

已经有很多关于这方面的资源,但我似乎无法让它发挥作用。我究竟做错了什么? jar 文件位于:

http://www.alexandertechniqueatlantic.ca/multimedia/AT-web-presentation-imp.jar

我用来嵌入的代码是:

<APPLET ARCHIVE="multimedia/AT-web-presentation-imp.jar" 
        CODE="ImpViewer.class" 
        WIDTH=100% 
        HEIGHT=100%>
</APPLET>

我使用的测试页在:

http://www.alexandertechniqueatlantic.ca/test.php

当我下载 jar 时它运行良好,所以我确定问题仅出在 html 嵌入上。请帮忙!

此外,我收到以下错误:

java.lang.ClassCastException: ImpViewer cannot be cast to java.applet.Applet

最佳答案

java.lang.ClassCastException: ImpViewer cannot be cast to java.applet.Applet

“小程序”不是小程序。

顺便说一句 - 漂亮的用户界面。就像红色飞溅淡入“欢迎介绍性研讨会”页面的方式一样。非常顺畅。

使用 Java Web Start 从链接启动它(请不要尝试将如此漂亮的 UI 塞进网页中)。


如果客户坚持将 GUI 塞进网站,那么(帮我拍打他们 &)试试这个 hack。

/*
<APPLET 
    ARCHIVE="AT-web-presentation-imp.jar" 
    CODE="ImpViewerApplet" 
    WIDTH=720 
    HEIGHT=564>
</APPLET>
*/
import java.awt.*;
import java.applet.*;
import java.util.*;

public class ImpViewerApplet extends Applet {

    public void init() {
        setLayout(new BorderLayout());
        Window[] all = Window.getWindows();
        ArrayList<Window> allList = new ArrayList<Window>();
        for (Window window : all) {
            allList.add(window);
        }
        String[] args = {};
        ImpViewer iv = new ImpViewer(); 
        iv.main(args);

        all = Window.getWindows();
        for (Window window : all) {
            if (!allList.contains(window) && window.isVisible()) {
                if (window instanceof Frame) {
                    Frame f = (Frame)window;
                    Component[] allComp = f.getComponents();
                    Component c = f.getComponents()[0];
                    f.remove(c);
                    f.setVisible(false);
                    add(c);
                    validate();
                }
            }
        }
    }
}

重点是“hack”这个词。

  1. Frame 会在屏幕上闪烁然后消失。
  2. 它只能在 720x564 像素下工作,这与可调整为任意大小的 java.awt.Frame 不同。但是,无论如何,您的“100%”宽度/高度有点乐观。有些浏览器会遵守这些限制,有些则不会。

关于java - 如何在 HTML 中嵌入 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7531740/

相关文章:

Java软件测试

java - 在枚举中初始化一个字符串数组

javascript - GAE + Blobstore : Serve different image size depending on viewport width

java - 运行小程序时摆脱 Java 部署工具包

java - 每个枚举的保存方法

java - Teradata CLOB 批处理对 JDBC 没有用吗?

javascript - 使用 jquery 或 javascript 按钮单击计时器 5 秒

java - 无法获取img标签

java - 如何将网页中的小程序包含在不同的目录中?

java - 在 Java Applet 中创建 "camera"来跟随玩家时出现问题