|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Отметьте: Это руководство по плагину Java описывает функции, выпущенные до Java SE 6 обновлений 10 выпусков. См. Java Богатый документ Разработки и Развертывания Интернет-приложений для последней информации.
Этот раздел затрагивает следующие темы:
Это - полный, рабочий пример, показывающий, как развернуть единственный файл фляги от Платформы Носителей Java (JMF) как Расширение Java. Использование в качестве примера SimplePlayerApplet.java и jmf.jar играть .avi медиа-файл. Это использует необработанный метод установки для installating повторно упакованная и подписанная версия jmf.jar вызванный s_my_jmf.jar. Обычно есть другие файлы фляги, которые устанавливаются с JMF, но для SimplePlayerApplet.java только функциональность в jmf.jar требуется.
Для пользы простоты этот пример делает следующие предположения:
C:\"Program Files"\Java\jdk1.6.0C:\plugin\keystoreskeystore имя thawte.p12storepass и keypass то же самое"New Technology Company's Thawte Consulting cc ID"В этом случае нет никакого установщика. Все, что Вы должны сделать, получают необходимый файл фляги, jmf.jar, это должно быть загружено и скопировано в <jre_location>/lib/ext. Плагин, в соединении с механизмом расширения в JRE, обрабатывает установку (загрузка и копирование файла) для Вас.
Можно добраться jmf.jar загружая межплатформенную установку архивируют файл jmf-2_1_1e-alljava.zip от . Наряду с другими файлами фляги, файл zip содержит jmf.jar, который можно извлечь из zip.
Как только Вы получили jmf.jar, Вы будете хотеть извлечь jmf.jar непосредственно в некоторый каталог, сказать C:\plugin\extensions\workspace1. Здесь Вы будете хотеть удалить META-INF каталог, если это существует, как manifest.mf файл содержит информацию о подписании, которую Вы не хотите.
Затем Вы должны создать свой собственный файл манифеста для нового файла фляги, чтобы быть основанными на jmf.jar. Файл манифеста, который мы создаем, мы вызываем jmf_manifest. Это будет обеспечено как входной для jar инструмент. Вот то, что используется в этом примере:
Extension-Name: javax.media.s_my_jmf
Specification-Vendor: Sun Microsystems, Inc
Specification-Version: 2.1
Implementation-Vendor-Id: com.sun
Implementation-Vendor: Sun Microsystems, Inc
Implementation-Version: 2.1.1
Сначала мы будем сотрясать файлы в jmf.jar и переименуйте результат my_jmf.jar. Затем мы подпишем результат и вызовем его s_my_jmf.jar.
Чтобы сотрясать файлы в workspace1 с нашим новым файлом манифеста jmf_manifest, мы cd к расположению workspace1, тогда мы используем jar инструмент в JDK следующим образом:
C:\plugin\extensions\workspace1>C:\"Program Files"\Java\jdk1.6.0\bin\jar cmf jmf_manifest my_jmf.jar *.class codecLib com javax jmapps
Отметьте это codecLib, com, javax, и jmapps подкаталоги, которые должны быть jar'd также as *.class.
Если у Вас есть Thawte keystore вызванный thawte.p12 расположенный в C:\plugin\keystores с тем же самым паролем, для обоих storepass и keypass, и storetype "pkcs12" и псевдоним keystore "Sun Microsystems Inc.'s Thawte Consulting cc ID", тогда можно пропустить следующий шаг и продолжить к подписанию my_jmf.jar и создание подписанного файла фляги вызывают s_my_jmf.jar.
Можно создать вызванный keystore thawte.p12 с тем же самым паролем, для обоих storepass и keypass и псевдоним keystore "New Technology Company's Thawte Consulting cc ID" выполняя следующую команду:
C:\plugin\keystores>C:\"Program Files"\Java\jdk1.6.0\bin\keytool -genkey -alias "Sun Microsystems Inc.'s Thawte Consulting cc ID" -keypass password -keystore thawte.p12 -storetype pkcs12 -storepass password
В этом примере мы используем jarsigner инструмент, чтобы подписать новый файл фляги. Использовать C:\plugin\extensions\workspace1>C:\"Program Files"\Java\jdk1.6.0\bin\jarsigner -keystore C:\plugin\keystores\thawte.p12 -storepass password -keypass password -storetype "pkcs12" -signedjar s_my_jmf.jar my_jmf.jar "New Technology Company's Thawte Consulting cc ID"
Мы можем проверить новый подписанный файл фляги следующим образом:
C:\plugin\extensions\workspace1>C:\"Program Files"\Java\jdk1.6.0\bin\jarsigner -verify s_my_jmf.jar
У нас теперь есть подписанный файл фляги с надлежащим manifest.mf файл для необработанной установки.
Затем мы должны создать файл фляги апплета.
Апплет состоит из единственного файла, SimplePlayerApplet.class, это может использоваться, чтобы воспроизвести медиа-файл. Исходный код для апплета может быть просмотрен здесь. То, что мы должны сделать, создают файл манифеста, требовавшийся апплет, который мы вызовем applet_manifest, сотрясайте апплет с декларацией, затем подпишите результат..
Апплет applet_manifest следующие:
Extension-List: s_my_jmf s_my_jmf-Extension-Name: javax.media.s_my_jmf s_my_jmf-Specification-Version: 2.1 s_my_jmf-Implementation-Version: 2.1.1 s_my_jmf-Implementation-Vendor-Id: com.sun s_my_jmf-Implementation-URL: http://java.sun.com/products/plugin/extensions/examples/jmf/s_my_jmf.jar
Отметьте, что вышеупомянутая декларация говорит что фляга расширения, s_my_jmf.jar, может быть загружен с java.sun.com веб-сервер в http://java.sun.com/products/plugin/extensions/examples/jmf
Если SimplePlayerApplet.class и applet_manifest располагаются в C:\plugin\extensions\workspace2, мы можем сотрясать апплет с декларацией со следующей командой:
C:\plugin\extensions\workspace2>C:\"Program Files"\Java\jdk1.6.0\bin\jar cmf applet_manifest my_SimplePlayerApplet.jar *.class
Снова, мы используем jarsigner подписать файл фляги:
C:\plugin\extensions\workspace2>C:\"Program Files"\Java\jdk1.6.0\bin\jarsigner -keystore C:\plugin\keystores\thawte.p12 -storepass password -keypass password -storetype "pkcs12" -signedjar s_my_SimplePlayerApplet.jar my_SimplePlayerApplet.jar "Sun Microsystems Inc.'s Thawte Consulting cc ID"
и мы проверяем это следующим образом:
C:\plugin\extensions\workspace2>C:\"Program Files"\Java\jdk1.6.0\bin\jarsigner -verify s_my_SimplePlayerApplet.jar
У нас теперь есть наш подписанный вызванный файл фляги апплета s_my_SimplePlayerApplet.jar, чья декларация содержит корректную информацию, чтобы инициировать установку необходимого файла фляги расширения, s_my_jmf.jar если никакой такой файл или более старая версия не находятся в <jre_location>/lib/ext.
Затем мы должны создать HTML для апплета.
У нас есть несколько вариантов. Мы можем использовать стандартное APPLET тегируйте и предположите, что у тех, кто посещает страницу, есть версия 1.3.1_01 Плагина Java или позже установленный на их системах. (Использовать Плагин Java, чтобы запустить апплет со стандартным тегом апплета требует 1.3.1_01 или позже.) Мы можем также использовать Преобразователь HTML, расположенный в JDK в bin каталог (<sdk_location>/bin/HtmlConverter.exe) преобразовать апплет в различные формы. Здесь мы используем стандартную форму апплета, показанную ниже:
SimplePlayerApplet-1.html<html>
<head>
<title>SimplePlayerApplet</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<applet code="SimplePlayerApplet.class" archive="s_my_SimplePlayerApplet.jar" width=320 height=300>
<param name="file" value="0720crt1.avi">
</applet>
</body>
</html>
Отметьте, что медиа-файл 0720crt1.avi.
Для этого примера следующие файлы были помещены в java.sun.com веб-сервер в http://java.sun.com/products/plugin/extensions/examples/jmf:
0720crt1.avis_my_jmf.jars_mySiplePlayerApplet.jarSimplePlayerApplet-1.htmlМожно протестировать установку, щелкая по ссылке здесь:
Когда Вы укажете на свой браузер на URL, фляга апплета будет сначала загружена и кэшироваться; и, если расширение не было уже установлено, Вы будете видеть диалоговое окно Загрузки Запроса Java, которое говорит: 'Апплет требует установки дополнительного пакета. Вы хотите продолжать?'. У Вас будут опции, чтобы продолжать или отменить. Если Вы будете продолжать установку, нажимая кнопку OK, то Вы будете видеть, что Безопасность Предупреждает диалоговое окно для файла фляги расширения. Можно продолжить с установкой пакета, нажимая кнопку Run. Расширение будет установлено в <jre_location>/lib/ext и апплет будет работать.