Апплет Java, как и программа на
JavaScript, должен выполняться из гипертекстового документа HTML. Именно с этим
свойством апплетов связано происхождение термина «выполняемое содержимое». Чтобы
включать апплеты в файл HTML, используется HTML-тег <applet>. Тег
<applet> является контейнерным тегом. Это значит, что в тексте
гипертекстового документа за этим тегом обязательно должен быть указан
закрывающий тег </applet>. Ниже привожу синтаксис тега
<applet> (необязательные атрибуты выделены зелёным цветом).
<applet
code=»File.class»
codebase=»ClassDirectory»
width=w
height=h
vspase=vs
hspace=hs
alt=text
name=appletName
align=left | right
| top | middle | baseline | bottom |
<param name=ParamName
value=ParamValue>
HTMLТекст…
</applet>
где атрибут code задает имя загружаемого файла с расширением
.class, codebase – имя каталога, в котором содержится данный файл
(файлы) с расширением .class, width – ширина области вывода
апплета в пикселях, а height – ее высота. Использовать кавычки («)
в именах аргументов необязательно. Тег <param> предназначен для
задания имен (ParamName) и значений (ParamValue) параметров,
которые передаются апплету из файла HTML. Допускается задание нескольких тегов
<param>. HTMLText – текст, предназначенный для
пользователей, которые применяют броузеры, не поддерживающие язык Java. Этот
текст выводится на экран в том виде, в каком указан в донном теге. Он должен
задаваться в формате HTML, и его длина не ограничивается. Атрибут alt предназначен для вывода теста
в окнах броузеров, которые распознают тег <applet>, но не могут
выполнить апплет. Атрибут align, по своему действию аналогичен тегу
<img align=… scr>. Атрибут align предназначен для задания
способа размещения области вывода апплета на странице. Атрибутами vspace
и hspace задаются размеры поля пустого пространства над и под областью
вывода апплета (значения обоих атрибутов указываются в пикселях).
Например можно задать следующий тег <applet>:
<applet code=»MyApplet.class»
codebase=»CLASSES»
width=150
height=150
<hr>To viev
this applet you will need a Java-aware browser!<p>
<img
scr=»scrndump.gif»><hr>
</applet>
Этот тег осуществляет вызов апплета MyApplet.class. Для пользователя,
просматривающего данную страницу с помощью броузера, который не поддерживает
Java, на экране будет отображаться текст «To viev this applet you will need a
Java-aware browser!» (Для просмотра этого апплета вам понадобится броузер,
поддерживающий Java), а также графическое изображение (заданное в теге
<img scr…>). Авторы некоторых приложений предпочитают в таких
случаях выводить вместо текста «картинку» – такую, какую увидел бы на экране
пользователь, распологающий поддерживающим Java броузером. При запуске область
вывода апплета будет занимать квадратный участок экрана размерами 150х150
пикселей. Разработчик апплета должен позаботиться о том, чтобы выводимые
апплетом данные не попадали за пределы выделенной для них области. (В апплетах
можно задавать размеры области отображения, в которую будет выводится
информация. Если с помощью необязательных атрибутов width/heigh не задана
область вывода апплета, то данные будут выводиться и отображаться в области
экрана, заданной в самом апплете.) Включение апплета в страницу без
соответсвующего текста, предназначенного для тех пользователей, у которых
броузеры, не поддердивают Java, принято считать невежливым. Атрибутом
codebase в этом примере задается, что файл MyApplet.class
находится в подкаталоге CLASSES каталога, в котором содержится
HTML-файл.
Пример использования тегов
<applet>.
Рассмотрим следующий пример:
<applet code=»MyApplet.class» codebase=»myclasses»>
Апплет
распологался бы здесь !
</applet>
В этом фрагменте текста HTML атрибутом codebase
задается каталог myclasses. Этот каталог является подкаталогом каталога,
из которого был загружен данный файл HTML. Например если приведенные выше теги
входят в состав HTML-файла C:\Applets\Demo_Applet.html, то броузер будет
искать файл MyApplet.class в каталоге C:\Applets\myclasses.
Приведённый выше тег <applet> можно использовать для вызова
локальных апплетов (например, чтобы проверить апплет сначала на своём
компьютере, а потом уже поместить его на Web-сервер). Примечание: Не все апплеты
могут выполняться локально.
Конечно же, апплет может размещаться не только в том каталоге, где находится
вызывающий его файл HTML, а и в любом другом месте Internet. В таких случаях в
атрибуте codebase необходимо указать URL файла апплета с расширением
.class, например:
<applet
code=»RemoteApplet.class»
codebase=»http://www.somehost.com/appletdir/classes/»>
Пример
апплета.
</applet>
В этом примере вызывается апплет RemoteApplet.class, расположенный на
хосте Internet www.somehost.com в каталоге /appletdir/classes/.
Для того чтобы загрузить апплет в вашу систему, броузер использует протокол
передачи гипертекстовых документов (HyperText Transfer Protocol – HTTP), а
выполнение апплета осуществляется под управлением встроенного в броузер ядра
Java.
Если вы решили передать ваши апплеты на Web-сервер (через FTP), убедитесь,
что в HTML-файле, в котором они используются, правильно задан атрибут
codebase. Если файл апплета с расширением .class находится в том же
каталоге, что и соответствующий HTML-файл, вызывающий данный апплет, т.е.
содержащий тег <applet>, атрибут codebase можно вообще опустить.
Лучше, однако, если это возможно, хранить файлы с расширением .class и
исходные тексты программ на языке Java в разных каталогах.