Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации

Развертывание апплета

Богатый Совет Развертывания Интернет-приложений> Развертывание Апплета

Содержание


Введение

Апплеты могут быть развернуты рукой, кодирующей апплет, объект, или встроить теги с обязательными параметрами. Однако, чтобы гарантировать перекрестную совместимость браузера, рекомендуется, чтобы Инструментарий Развертывания использовался, чтобы развернуть апплеты. Апплеты могут быть развернуты и запущены через:

Пожалуйста, сошлитесь на документ Совета Развертывания для информации об использовании Инструментария Развертывания и развертывании апплетов, используя JNLP.

Ссылка: Новые Параметры к АППЛЕТУ, ОБЪЕКТУ, ВСТРАИВАЮТ элементы

Развертывание используя JNLP

jnlp_href

Файл, содержащий информацию, которую плагин должен использовать, чтобы запустить апплет.

Загрузка Экрана

Новый плагин предлагает лучшую настройку изображения, которое выводится на экран прежде, чем апплет загружается. Анимированные 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 поддерживаются, хотя есть определенные правила и ограничения.

Примеры

  1. Определение большего чем значение по умолчанию максимального размера "кучи":
    <APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
        <PARAM name="java_arguments" value="-Xmx128m">
    </APPLET>
      
    
  2. Определение размера "кучи" не по умолчанию и Java 2-D аппаратная ускоряющая опция, обычно используемая для апплетов, используя OpenGL через JOGL:
    <APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
        <PARAM name="java_arguments" value="-Xmx256m -Dsun.java2d.noddraw=true">
    </APPLET>
         
    
  3. Включение многословному выводу сборщика "мусора", и средству утверждения в языке программирования Java:
    <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:

Нет никакого способа "назвать" экземпляр 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>

 

Выбор Версии JRE

java_version

Определяет версию JRE, на которую можно запустить определенный апплет.

Примеры

  1. Определение определенной версии JRE для определенного апплета:
    <APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
        <PARAM name="java_version" value="1.5.0_09">
    </APPLET>
      
    
  2. Запрос любого JRE в определенном семействе для определенного апплета:
    <APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
        <PARAM name="java_version" value="1.5*">
    </APPLET>
    
  3. Определение JRE от определенного семейства или любого более позднего семейства:
    <APPLET archive="my_applet.jar" code="MyApplet" width="300" height="300">
        <PARAM name="java_version" value="1.5+">
    </APPLET>
    

Атрибут classid в Internet Explorer

Браузер Internet Explorer использует classid атрибут <object> тег, чтобы указать, как контент того тега должен быть выведен на экран. classid атрибут может использоваться в соединении с codebase припишите автоматически загрузке и установите определенную версию JRE, если ни один не в настоящий момент доступен на системе (см. classid использование). Понятие семейства CLSID было представлено позже, чтобы обеспечить способ выбрать произвольный JRE в данном семействе.

Не все 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; кэширование загрузчика класса включается по умолчанию.

 

 




Oracle и/или его филиалы Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами