Spec-Zone .ru
спецификации, руководства, описания, API
|
Содержание
Апплеты могут быть развернуты рукой, кодирующей апплет, объект, или встроить теги с обязательными параметрами. Однако, чтобы гарантировать перекрестную совместимость браузера, рекомендуется, чтобы Инструментарий Развертывания использовался, чтобы развернуть апплеты. Апплеты могут быть развернуты и запущены через:
Пожалуйста, сошлитесь на документ Совета Развертывания для информации об использовании Инструментария Развертывания и развертывании апплетов, используя JNLP.
Файл, содержащий информацию, которую плагин должен использовать, чтобы запустить апплет.
Новый плагин предлагает лучшую настройку изображения, которое выводится на экран прежде, чем апплет загружается. Анимированные GIFs теперь поддерживаются как цель image
параметр, как описано в Специальном разделе Атрибутов старого Руководства по Плагину Java. Дополнительно, следующие новые параметры теперь поддерживаются:
boxborder
Загружается булев параметр, указывающий, должна ли граница с одним пикселем быть оттянута вокруг края области апплета, выводя на экран изображение, показанное перед апплетом. Значения по умолчанию к true
. Мы рекомендуем установить это значение в false
, в особенности при использовании анимированного ДЖИФА как загружающееся изображение, чтобы избежать возможности мерцания.
centerimage
Булев параметр, указывающий, должно ли загружающееся изображение центрироваться в пределах области апплета вместо того, чтобы произойти в левом верхнем углу. Значения по умолчанию к false
.
Пример используя boxborder
и centerimage
параметры:
<APPLET archive="large_archive.jar" code="MyApplet" width="300" height="300"> <!-- Use an animated GIF as an indeterminate progress bar while the applet is loading --> <PARAM NAME="image" VALUE="animated_gif.gif"> <!-- Turn off the box border for better blending with the surrounding web page --> <PARAM NAME="boxborder" VALUE="false"> <!-- Center the image in the applet's area --> <PARAM NAME="centerimage" VALUE="true"> </APPLET>
java_arguments
Определяет параметры командной строки JVM, которые будут использоваться, выполняя этот экземпляр апплета. Почти все параметры командной строки JVM поддерживаются, хотя есть определенные правила и ограничения.
Примеры
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_arguments" value="-Xmx128m"> </APPLET>
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_arguments" value="-Xmx256m -Dsun.java2d.noddraw=true"> </APPLET>
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_arguments" value="-verbose:gc -ea:MyApplet"> </APPLET>
Ряд "безопасных" параметров командной строки JVM и системных свойств определяется в разделе Синтаксиса Файла JNLP Java веб-Руководство Разработчиков Запуска. В новом плагине, пока все параметры командной строки JVM, определенные через java_arguments
параметр безопасен, тогда апплет, или любые классы, которые это загружает, может быть без знака.
Небезопасные параметры командной строки JVM (другими словами, те не в безопасном списке) могут также быть определены через java_arguments
параметр. В этом случае есть потенциал для угрозы безопасности, таким образом, Плагин Java осуществляет правило, что никакие классы без знака не могут быть загружены. Другими словами только доверяемый код, для которого пользователь принял диалоговое окно безопасности, может быть загружен таким экземпляром JVM. Если попытка предпринимается, чтобы загрузить или недоверяемый класс без знака в экземпляре JVM, для которого небезопасные системные свойства были определены, a ClassNotFoundException
будет брошен, указывая, что данный класс не мог быть загружен, потому что он не был подписан.
Есть относительно немного ограничений на то, какие параметры командной строки можно передать через java_arguments
параметр. Вообще, -Xbootclasspath
параметр запрещается, так же как любой параметр командной строки, используемый, чтобы определить путь, такой как -classpath
или -jar
. Все другие параметры командной строки, настоящее и будущее, должны поддерживаться с протестом о безопасных и небезопасных параметрах командной строки, описанных выше.
Параметры командной строки, которые передают через java_arguments
параметр добавляется к любому определенному через диалоговое окно Настроек Времени выполнения Апплета Java в Панели управления Java. Параметры командной строки от панели управления используются для всех экземпляров JVM версии, для которой они определяются; java_arguments
параметры не полностью заменяют их. (Диалоговое окно Настроек Времени выполнения Апплета Java было также улучшено в 6u10, чтобы лучше управлять многократными версиями JRE, и теперь имеет те же самые возможности как диалоговое окно Настроек Времени выполнения Апплета Java, используемое для Java веб-Запуск.)
Когда параметры командной строки JVM определяются, вероятно, что новый плагин должен будет запустить другой экземпляр JVM, чтобы удовлетворить их. Другими словами маловероятно, что существующий ранее экземпляр JVM будет запущен с корректного набора параметров командной строки, чтобы удовлетворить запрос. Правила для точно, когда новый экземпляр JVM запускается, чтобы запустить данный апплет, сознательно оставляют неуказанными, поскольку эта функциональность совершенно нова в 6u10 выпуск и, возможно, должна измениться в последующих выпусках. Вот грубый набор инструкций для совместного использования и создания новых экземпляров JVM:
java_arguments
определенный), тогда этот экземпляр JVM никогда не будет использоваться, чтобы запустить любой апплет, у которого есть даже один параметр командной строки, определенный через java_arguments
.-Xmx
обрабатывается особенно: если существующий ранее экземпляр JVM был запущен с например -Xmx256m
через java_arguments
, и новый апплет запрашивает -Xmx128m
, тогда новый апплет будет очень вероятно выполнен в существующем ранее экземпляре JVM. Другими словами, -Xmx
спецификации являются соответствующими с большим чем или равным тестом.Нет никакого способа "назвать" экземпляр JVM используемым, чтобы запустить определенный апплет и "вызвать" последующие апплеты в тот экземпляр JVM.
См. раздел по separate_jvm
параметр, чтобы изолировать определенный апплет в его собственном экземпляре JVM, отделитесь от всех других апплетов.
separate_jvm
Булев параметр, определяющий, что определенный апплет должен работать в его собственном экземпляре JVM. Это поддерживает определенные мощные настольные апплеты, которые не могут терпеть интерференцию от других апплетов, работающих в той же самой JVM и потенциально использующих пространство "кучи" или другие ресурсы.
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_arguments" value="..."> <PARAM name="separate_jvm" value="true"> </APPLET>
java_version
Определяет версию JRE, на которую можно запустить определенный апплет.
Примеры
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_version" value="1.5.0_09"> </APPLET>
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_version" value="1.5*"> </APPLET>
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="java_version" value="1.5+"> </APPLET>
Браузер Internet Explorer использует classid
атрибут <object>
тег, чтобы указать, как контент того тега должен быть выведен на экран. classid
атрибут может использоваться в соединении с codebase
припишите автоматически загрузке и установите определенную версию JRE, если ни один не в настоящий момент доступен на системе (см. classid использование). Понятие
Не все classid опции, описанные в более ранней документации, работают в соединении с новым Плагином Java, чтобы и выбрать, и потенциально автоматически загрузить и установить, определенная версия JRE. Этот раздел описывает, какие работы в соединении с новым плагином, и что механизмы обратной совместимости на месте.
Рекомендуемое использование атрибута classid находится в соединении с java_version
параметр, описанный выше. Динамический classid, который всегда указывает на последнее, устанавливал версию JRE, должен быть определен в <object>
тегируйте, чтобы указать, что последняя версия Плагина Java, с многократной поддержкой JRE, должна использоваться. java_version
параметр должен тогда использоваться, чтобы определить версию JRE, чтобы использовать, чтобы выполнить апплет.
Пример рекомендуемого использования:
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://www.example.com/out-of-proc-plugin-url-placeholder.exe#1,6,0,10" width="200" height="200"> <param name="code" value="MyApplet"> <param name="java_version" value="1.5*"> </object>
Отметьте, что в текущее время Sun Microsystems, Inc. не обеспечивает новый CLSID, чтобы описать новый Плагин Java, но вместо этого перегружает использование динамического classid. Это означает, что, если предыдущая версия JRE уже устанавливается, у которого нет многократной поддержки версии JRE в Плагине Java, новый Плагин Java не будет автоматически загружен и установлен, так как обработчик, для которого classid уже доступен. Результат будет состоять в том что выбор версии через java_version
параметр будет проигнорирован. Решение не обеспечить новый classid можно повторно посетить в будущем. В настоящее время Sun ожидает, что сложные разработчики, требующие многократного выбора версии JRE и автоматической загрузки нового Плагина Java, или задокументируют это, их пользователи должны установить и сконфигурировать новый Плагин Java, чтобы должным образом выполнить их контент, или будут иметь административный контроль над клиентскими машинами, как распространено во многих предприятиях.
Чтобы ослабить переход для разработчиков, уже использующих атрибут classid, два механизма обратной совместимости были представлены: возможность использовать classid, чтобы выбрать или определенную версию JRE, или произвольный JRE в данном семействе. В обоих случаях ожидание состоит в том, что и новый Плагин Java, и целевая версия JRE для апплета, уже устанавливаются и конфигурируются. В соединении с этими механизмами обратной совместимости не поддерживается автозагрузка любого JRE, или тот, предоставляющий новый Плагин Java или тот, который будет использоваться, чтобы выполнить апплет.
Отметьте, что эти механизмы обратной совместимости могут быть удалены в будущем выпуске. Sun рекомендует перейти существующий контент к новым механизмам, описанным выше.
Выбор определенной версии (1.5.0_11) JRE для отдельного апплета:
<object classid="clsid:CAFEEFAC-0015-0000-0011-ABCDEFFEDCBA" width="200" height="200"> <param name="code" value="MyApplet"> </object>Выбор последнего JRE от определенного семейства (1.5), использующего семейство CLSID:
<object classid="clsid:CAFEEFAC-0015-0000-FFFF-ABCDEFFEDCBA" width="200" height="200"> <param name="code" value="MyApplet"> </object>
Отметьте что попытки загрузить более старые версии JRE использование codebase
параметр будет проигнорирован, потому что эти classids регистрируются на системе, чтобы указать на более свежие версии DLL во время процесса установки нового Плагина Java. Отметьте также что использование java_version
параметр в соединении с этими classids не поддерживается. Определение обоих java_version
параметр так же как или помехи или семейство classid приведет к неопределенному поведению.
version
и jpi-version
атрибуты в Mozilla Browser FamilyИспользование семейства браузера Mozilla MIME вводит <embed>
тег, чтобы указать, как контент того тега должен быть выведен на экран. <embed>
тег также поддерживает автоматическую загрузку определенной версии JRE.
Предыдущие версии Плагина Java, используемого version
и jpi-version
части application/x-java-applet
Тип MIME, чтобы выполнить выбор версии JRE. Не все эти механизмы, описанные в более ранней документации, работают в соединении с новым Плагином Java, чтобы и выбрать, и потенциально автоматически загрузить и установить, определенная версия JRE. Этот раздел описывает, какие работы в соединении с новым плагином, и что механизмы обратной совместимости на месте.
Рекомендуемое использование <embed>
тег не должен определить никого version
или jpi-version
в типе MIME апплета. Вместо этого используйте java_version
параметр, чтобы выбрать определенную версию JRE, на которую можно выполнить апплет. Если никакая предыдущая версия Java не устанавливается, автозагрузка нового Плагина Java может быть включена, используя pluginspage
параметр:
<embed code="MyApplet" type="application/x-java-applet" pluginspage="http://www.example.com/out-of-proc-plugin-url-placeholder.xpi" width="200" height="200"> java_version="1.5*" </embed>
Отметьте, что в текущее время Sun Microsystems, Inc. не обеспечивает новый тип MIME, чтобы описать новый Плагин Java, но вместо этого перегружает использование application/x-java-applet
Тип MIME. Это означает, что, если предыдущая версия JRE уже устанавливается, у которого нет многократной поддержки версии JRE в Плагине Java, новый Плагин Java не будет автоматически загружен и установлен, так как плагин, поддерживающий тот тип MIME, уже доступен. Результат будет состоять в том что выбор версии через java_version
параметр будет проигнорирован. Решение не обеспечить новый тип MIME можно повторно посетить в будущем. В настоящее время Sun ожидает, что сложные разработчики, требующие многократного выбора версии JRE и автоматической загрузки нового Плагина Java, или задокументируют это, их пользователи должны установить и сконфигурировать новый Плагин Java, чтобы должным образом выполнить их контент, или будут иметь административный контроль над клиентскими машинами, как распространено во многих предприятиях.
Ослабить переход для разработчиков, уже использующих version
и jpi-version
части типа MIME, ограниченный уровень обратной совместимости поддерживается в новом Плагине Java. Определенно, version
атрибут поддерживается, чтобы запросить произвольный JRE в данном семействе или любом более позднем семействе. Используя jpi-version
атрибут, чтобы выбрать определенную версию JRE больше не поддерживается. Его использованию строго обескураживают, так как это может разрушить корректную работу нового Плагина Java.
Отметьте, что этот механизм обратной совместимости может быть удален в будущем выпуске. Sun рекомендует перейти существующий контент к новым механизмам, описанным выше.
Использовать version
атрибут, чтобы потребовать 1.5 JRE или более позднего:
<embed code="MyApplet" type="application/x-java-applet;version=1.5" width="200" height="200"> </embed>
Отметьте что семантика version
атрибут подразумевает, что вышеупомянутый тег эквивалентен использованию java_version
параметр со значением 1.5+
. Так как новый Плагин Java поставляется с Java SE 6 обновлений 10, который является более поздней версией чем 5.0, этот запрос версии по существу не имеет никакого эффекта.
Отметьте также то объединение version
атрибут с java_version
параметр не поддерживается. Определение обоих java_version
параметр так же как a version
атрибут приведет к неопределенному поведению.
classloader_cache
Новый плагин обеспечивает способ выбрать из использования кэша загрузчика класса на апплете основанием апплета.
<APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300"> <PARAM name="classloader_cache" value="false"> </APPLET>
Значение по умолчанию classloader_cache
параметр true
; кэширование загрузчика класса включается по умолчанию.