2013-03-17 2 views
0

Я создал java-апплет и пытаюсь вставить его в файл HTML на моем сервере. Когда я получить доступ к странице, апплет пытается загрузить, а затем падает с ClassNotFoundException на .applet.BookingApplet.class (который является имя апплета, где applet это имя пакета апплета в.)Встраивание Java-апплета на веб-страницу

<body> 
    <script src ="http://java.com/js/deployJava.js"></script> 
    <script> 
     var attributes = { 
     codebase: '/webapp/HelpSessions.jar', 

     code: '/webapp/HelpSessions.jar/applet/BookingApplet.class', 
     archive: '/lib/javax.persistence.jar, /lib/javax.validation-1.0.0.GA.jar, /lib/joda-time-2.1.jar, /lib/mail.jar, /lib/mysql-connector-java-5.1.23-bin.jar', 
     width: 800, 
     height: 600   
     }; 
     var version = "1.6" 
     deployJava.runApplet(attributes, version); 
     </script> 
</body> 

Этот я впервые попытался сделать что-то подобное, поэтому я уверен, что это всего лишь синтаксическая ошибка с тем, как я обращаюсь к файлам классов в HTML. Я могу отправить любой другой код, если это необходимо, но я не думаю, что он имеет значение, потому что апплет отлично работает в AppletViewer.

Я не буду спать сегодня вечером, пока я получаю эту вещь работает ...

EDIT: Для того, чтобы упростить вещи, я пытался двигаться все в одну папки, так что я бы не иметь дело с кодовым. Вот что он выглядит сейчас:

<html> 
<head> 
    <title>Schedule a Help Session</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
</head> 
<body> 
    <script src ="http://java.com/js/deployJava.js"></script> 
    <script> 
     var attributes = { 

     code: '/applet/BookingApplet.class', 
     archive: '/lib/javax.persistence.jar, /lib/javax.validation-1.0.0.GA.jar, /lib/joda-time-2.1.jar, /lib/mail.jar, /lib/mysql-connector-java-5.1.23-bin.jar', 
     width: 800, 
     height: 600   
     }; 
     var version = "1.6" 
     deployJava.runApplet(attributes, version); 
     </script> 
</body> 

, и я получаю тот же ClassNotFoundException. Кроме того, я вижу InterruptedException в деталях на java-консоли, но он не говорит мне, где (где угодно) в моем коде возникает исключение.

+0

попытаться поместить полный путь – btevfik

+0

положить его где? Кроме того, вы хотите включить 'public_html /', потому что это единственная родительская папка на сервере – drewmoore

+0

, например C:/..., это может сработать, я не уверен – btevfik

ответ

0

Измените атрибут code на "applet/BookingApplet.class". В настоящее время вы используете «/applet/BookingApplet.class».

Когда Java читает URL-адрес, он преобразует любые '/': s в '.': S. Это сделает URL-адрес /applet/BookingApplet.class ".applet.BookingApplet.class". «applet/BookingApplet.class» станет «applet.BookingApplet.class», который является правильным.

Не забудьте установить codebase, чтобы указать на каталог, в котором находится каталог «апплет».

Смежные вопросы