Загрузка Java-апплета из WEB-INF / classes с помощью JSP - PullRequest
1 голос
/ 01 мая 2010

У меня проблема с загрузкой апплета из каталога WEB-INF / classes. Основной класс апплета (MainApplet.class) находится в пакете aaa, но при загрузке я получил исключение java.lang.ClassNotFoundException. Где я не прав? Мой JSP находится в веб-страницах, каталог.

< jsp:plugin type="applet" code="aaa/MainApplet.class" jreversion="1.6" width="700" height="500" >

Заранее спасибо за ответ!

Ответы [ 2 ]

2 голосов
/ 01 мая 2010

Вместо этого упакуйте классы, специфичные для апплета, в файл JAR и поместите этот файл JAR в public веб-контент. Папка /WEB-INF не является общедоступной. Только так клиент может загрузить файл JAR со всеми классами одновременно в локальную среду и запустить апплет. Я также предпочел бы использовать тег <object> над устаревшим <jsp:plugin>. Например:

<object type="application/x-java-applet" width="300" height="200">
    <param name="archive" value="AppletJAR.jar">
    <param name="code" value="com.example.AppletClass">
</object>

Более подробные примеры см. в этой статье Sun .

1 голос
/ 01 мая 2010

Давайте подумаем, как это будет работать. Апплет выполняется в браузере. То есть браузер должен каким-то образом загружать ваши файлы классов. Классы в пути к классам веб-приложения обычно недоступны для браузера; браузер хочет, чтобы эти классы генерировали HTML, а не сами классы.

Итог: классы апплетов и классы веб-приложений выполняются на разных компьютерах и поэтому находятся в разных путях классов.

Чтобы исправить вашу проблему, прочитайте документацию по плагину jsp: особенно об атрибуте codebase.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...