Встраивание Java в HTML

Я уверен, что этот вопрос задан в миллион раз, но независимо от того, сколько запросов Google я делаю, я не могу заставить это работать. Я в основном пытаюсь получить проект с несколькими пакетами в нем, которые будут встроены в веб-страницу. Я сделал тестовую программу, которая просто сделала несколько шаров подпрыгивая вокруг экрана и смогла добиться этого. Я помещаю основной класс в один пакет и класс шара в другой, чтобы проверить его, и, похоже, он работает нормально. Но программа, которая мне действительно нужна на веб-странице (просто называемой FinalProject), отказывается это делать.

Лучшее, что я могу сделать, это дать мне пустой экран, не давая ошибки, а просто белую. Если я попытаюсь щелкнуть, где не должно произойти ничего, я думаю, потому что апплет там, но просто показывает белый цвет, поэтому я не вижу его. Я использовал тег applet, который из моего понимания теперь обесценился, но мне нужно включить этот проект на веб-странице, чтобы учитель мог его увидеть. Мы уже тестировали, что другие проекты людей (которые использовали тег applet) работают, поэтому я пытался придерживаться этого на данный момент и беспокоиться о том, чтобы он работал в каждом браузере впоследствии. Хотя это вполне может быть проблемой. Возможно, это будет работать на его браузере, но не на моем. Я пробовал запустить свою программу в Google Chrome, Mozilla Firefox и Internet Explorer без везения.

Вот код HTML:

<html>
<head>  

</head>  
<body>  
    <applet code = "main.FinalProject.class" width = "700px" height = "500px"></applet>  
</body>  
</html>

HTML файл, в котором он написан, находится в [Eclipse Workspace]/FinalProject/bin/test.htm. Файл FinalProject.class, указанный в HTML, существует в [Eclipse Workspace]/FinalProject/bin/ main/FinalProject.class. Файл FinalProject.class действует как основной класс, поэтому я уверен, что тот, который мне нужно запустить. Это тот, который связан с методами init(), actionPerformed(), paint() и всем этим хорошим материалом.

В настоящее время я пытаюсь запустить этот автономный режим на своем компьютере, поэтому не должно быть никакого сетевого URL, который я бы подумал. Я использовал Eclipse для написания кода Java, не знаю, если это имеет значение. К сожалению, Java-код довольно большой, слишком много для воспроизведения здесь, если есть что-то конкретное, о чем вы думаете, это проблема, которую я могу посмотреть и разместить этот небольшой раздел.

Некоторым из моих друзей удалось заставить их работать, однако они сказали, что им нужно удалить все их .png файлы (раздражающие, но выполнимые для моего проекта). Они также сказали, что должны удалить все коды движения мыши. Моя программа зависит от этого, мне нужно, чтобы он работал вообще. Я знаю, что ДОЛЖЕН быть способ использовать все коды MouseListener и MouseMoveListener онлайн, может быть, это немного отличается. Я не знаю, если это имеет какое-то отношение к этому, но я решил, что хочу указать, что нужно быть в безопасности.

Любая помощь здесь будет принята с благодарностью.

Ответ 1

В основном вы спрашиваете что-то вроде: Как развернуть Java-апплет для браузеров сегодня (апплет, вставка, объект)?

Исходя из этого, я думаю, что вы хотите:

<object 
  classid="clsid:CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA"
  style="height: 500px; width: 700px;">
  <param name="code" value="FinalProject.class">
    <comment>
      <embed code="FinalProject.class"
        type="application/x-java-applet"
        height="500" width="700">
        <noembed>
          This browser appears to lack support for Java Applets.
        </noembed>
      </embed>
    </comment>
  </object>

Теперь у вас есть имя файла main.FinalProject.class в вашем коде. Похоже, что FinalProject.class будет более вероятным. Но твой может быть прав. В любом случае этот html файл должен находиться в той же папке, что и main.FinalProject.class или FinalProject.class, и любые классы также могут потребоваться.

Теперь вам также может потребоваться убедиться, что ваши браузеры могут запустить апплет. Смотрите: Как включить Java в своем веб-браузере?


Update

Основываясь на отзывах от Andrew Thompson, предпочтительным решением является использование JavaScript от Oracle, например:

<script src="http://www.java.com/js/deployJava.js"></script>
<script>
    var attributes = {
        code:'FinalProject.class',
    width:700, height:500} ;
    var parameters = {}; // does the Applet take parameters?
    var version = '1.6' ; // does the Applet require a minimum version of Java
    deployJava.runApplet(attributes, parameters, version);
</script>

Для этого требуется возможность загрузки произвольного JavaScript, но вы также можете захватить этот файл deployJava.js и быть локальным. Возможно, стоит посмотреть.