![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
AntonSaburov |
|
||||||||||||||||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Java plug-in – что это такое ?
Автор статьи написал ее в ходе чтения документации по Java Plug-In и в данном случае форма изложения материала получилась несколько рваной, за что приношу свои извинения. Java plug-in (в дальнейшем просто plugin) в первую очередь был создан для того, чтобы пользователь мог запускать Java-приложения из под разных броузеров используя SUN JRE (Java Runtime Environment от SUN). Другими словами, если пользователю необходимо запустить апплет и этот апплет должен быть запущен из-под Sun JRE определенной версии, то сделать это хотелось бы как можно более удобным способом. На сегодняшний день существует два пути запуска апплета: 1. Использовать таг APPLET на HTML странице 2. Заменить таг APPLET на более современный таг OBJECT (для Internet Explorer’а) или на таг EMBED для броузера Netscape (Но для версии 6 этот таг уже не подходит) SUN предлагает использовать следующие правила для решения – какой таг использовать. Во-первых Вы должны определить – быдет ли использоваться апплет в интернет или в интранет сети. Если Интернет – используйте таг APPLET Если же Интранет – то OBJECT или EMBED Во-вторых Вы должны решить какой броузер будет использоваться для работы с апплетом Если Internet Explorer – используйте OBJECT Если же семейство Mozilla – используйте EMBED Если Вы рассчитываете на различные броузеры – используйте APPLET Использование тага APPLET Для подробного ознакомления с тагом APPLET советуем заглянуть на станицу http://www.w3.org/TR/1999/REC-html401-19991224/ (W3 HTML specification.) В HTML спецификации утверждается, что таг APPLET является устаревшим и использовать его не стоит. Но в связи с тем, что четкое описание обработки тага OBJECT в спецификации пока нет, SUN советует использовать таг APPLET в случае кросс-платформенности и кросс-броузерности. Достаточно простой пример использования тага:
Использование тага OBJECT Таг OBJECT имеет несколько аттрибутов. Мы рассмотрим самые важные. Аттрибут classid определяет какую версию JRE надо использовать и может быть записан в двух варинатах: 1. classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" В этом случае определение используемой версии JRE определяется динамически и используется самая последняя из установленных в данный момент. 2. classid="clsid:CAFEEFAC-xxxx-yyyy-zzzz-ABCDEFFEDCBA" В такой форме последовательности xxxx, yyyy, zzzz определяют точно, какая версия JVM будет использована. Например для использования plugin’а версии 1.5.0 classid определяется следующим образом: classid="clsid:CAFEEFAC-0015-0000-0000-ABCDEFFEDCBA" ЗАМЕЧАНИЕ! Формат версий для JVM выглядит следующим образом - n1.n2.n3_n4n5 n1.n2 –major версия программы n3 – minor версия программы n4, n5 – версия обновления програмы Аттрибут codebase определяет каким образом загружать необходимый plugin. Существует в двух формах: 1. codebase=<URL> В этом случае plugin будет загружаться с указанного URL 2. codebase=<URL>#Version=major,minor,micro,update В такой форме определяется версия необходимой JRE и если у пользователя установлена более старая версия, то броузер предложит установить ту, которая указана в URL. В качестве примера можно посмотреть на следующее описание:
Здесь http://java.sun.com/j2se/1.5.0/docs/guide/...todl-files.html Вы можете посмотреть список различных версий JRE и для каждой версии тот URL, который позволит Вам загрузить нужную версию. Использование тага EMBED
Наиболее интересными в данном таге являются два аттрибута. type – определяет, какая версия JRE необходима. Здесь разработчик может определить версию двумя путями 1. type="application/x-java-applet;version=1.5.0" В этом случае на компьютере пользователя должна быть устанволена JRE не ниже 1.5.0. В случае, если это не так, то ползователь будет перенаправлен на страницу, указанную в URL для загрузки нужной версии 2. type="application/x-java-applet;jpi-version=1.5.0_01 В такой ситуации требуется точное совпадение версии. И если даже версия на компьютере пользователя выше, будет производиться загрузка точной версии. Что делать в случае, если надо использовать несколько броузеров Разработчик может использовать два варианта для установки JRE. 1. Использование чистого HTML 2. Использование JavaScript Если Вы используете HTML, то надо помнить несколько правил: Internet Explorer – распознает таг OBJECT и игнорирует таг COMMENT Семейство Mozilla - игнорирурет таг OBJECT с аттрибутом classid и обрабатывает таг COMMENT. Вот пример кода, который позволяет загружать нужные плагины при использовании разных броузеров:
Если Вы предпочитаете использовать JavaScript то нижеприведенный пример достаточно ясно показывает, что Вы должны делать.
Вышеприведенный код имеет недостаток в плане того, что в Netscape 6 таг EMBED не поддерживается. Кроме того каждый раз писать такой код Вам само собой надоест и Вы бы предпочли что-то автоматическое. Для такого случая SUN создал специальные конверторы, которые позволяют изменить уже готовые HTML файлы. Результатом изменения файла будет новый файл, в котором таги APPLET будут заменены на более современный код. Конфигурирование прокси Большинство корпоративных пользователей подключены к сети, которая для выхода «наружу» используют прокси. Plugin позволяет настроить необходимые параметры. Для Windows необходимо зайти в Панель Управления (Control Panel) и запустить Java Plug-In Control Panel. В появившемся окошке выберите закладку Proxies. Plugin можно настроить в трех видах: 1. Использовать настройки броузера 2. Ручное конфигурирование 3. Ввести URL для автоматической настройки. Вы должны ввести URL для вызова файла с JavaScript где находится функция FindProxyForURL. Кэширование апплетов Панель управления плагином содержит в себе закладку, в которой можно настроить параметры кэша. Но кроме того разработчик может настроить параметры кэширования апплета с помощью указания аттрибутов для тагов OBJECT и EMBED. cache_archive – содержит список файлов, которые надо клсть в кэш. <PARAM NAME="cache_archive" VALUE="a.jar,b.jar,c.jar"> cache_version – содержит список версий апплета, которые надо кэшировать <PARAM NAME="cache_version" VALUE="1.2.0.1, 2.1.1.2, 1.1.2.7"> cache_archive_ex – используется для того, чтобы делать предварительную загрузку некоторых файлов <PARAM NAME =”cache_archive_ex” VALUE= "<jar_file_name>;<preload(optional)>;<jar_file_version(optional)>,..." «Молчаливая» установка Инсталляционный пакет JRE построен с помощью программы InstallShield, которая базируется в свою очередь на Microsoft Windows Installer. Он позволяет производить так называемую «молчаливую» установку. <jre>.exe /s /v"/qn ADDLOCAL=jrecore[,extra][,other_US] | ALL ] [IEXPLORER=1] [NETSCAPE6=1] [MOZILLA=1] [INSTALLDIR=<drive>:\<install_path>] [PRIVATE=1][REBOOT=Suppress]" Где jre.exe – исполняемый файл ADDLOCAL – значение локализации IEXPLORER, NETSCAPE6, MOZILLA – подключать ли JRE к этим броузерам Основы безопасности апплетов 1. Все неподписанные апплеты работают в стандратной «песочнице» 2. Если в файле java.policy НЕ ОПРЕДЕЛЕН usePolicy, то подписанные апплеты получают AllPermissions (полные права) если: Java Plug-In может проверить подпись и выдает приглашение, которое пользователь может принять и дать апплету такие права или отклонить. 3. Если в файле java.policy ОПРЕДЕЛЕН usePolicy, то апплет получает те права, которые прописаны в файле java.policy и не происходит запроса на подтверждение пользователя. Апплеты могут быть подписаны с помощью алгоритма RSA. Для того, чтобы plugin мог проверить подпись, в него встроен провайдер криптографии (не знаю как хорошо перевести Cryptographic Service Provider – CSP). CSP поддерживает алгоритмы подписи MD2-RSA, MD5-RSA, SHA-RSA. Более подробную инофрмацию по подписи апплетов можно получить в другой статье: http://vingrad.ru/JAVA-JAV-000116 Отладка апплетов с помощью Java Plug-in Для того, чтоы иметь возможность отлаживать Ваше приложение Вам необходимо установить Java 2 SDK. Как установить – можете посмотреть статью: http://vingrad.ru/JAVA-JAV-000126 Также убедитесь, что Ваше приложение было откомпилировано с ключом –g. Теперь начнем отладку. 1. Запустите Java Plug-in Control Panel (как это сделать см. Выше). В закладе Advanced установите параметры:
<connection-address> - это строка, которая указывает коннект к JVM. Например это может быть так:
2. Также в закладке Advanced установите нужную версию JDK, которая будет указывать на установленную Вами 3. Запустите Internet Explorer или Netscape и загрузите страницу, которая содержит отлаживаемый апплет. 4. Запустите команду jdb – attach <connection-address>. Для параметров, которые были установлены в пункте 1 можно использовать запуск
Основные сведения по использованию jdb Вы моежет найтипо адресу http://java.sun.com/j2se/1.5.0/docs/guide/jpda/jdb.html 5. Как только дебаггер подконнектится к JVM Вы можете начинать отладку Представленная информация само собой существует на официальном сайте Sun Microsystems и Вы можете использовать оригинальные описания Java Plug-In. Все замечания по поводу статьи автор примет с большим удовольствием. |
||||||||||||||||
|
|||||||||||||||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |