пятница, 14 декабря 2012 г.

Продуктивный ADF-домен: основные моменты

Предположим, что вы разработали ADF-приложение с использованием JDeveloper определенной редакции и решили установить его на тестовое/продуктивное окружение. Есть товарищи, которые ставят на продуктивное окружение  дистрибутив JDeveloper и создают ADF-домен на его основе (как вы знаете, в составе JDeveloper входит и Weblogic).
Мне данный вариант не симпатичен, и вот почему:

  • специфичные для платформы дистрибутивы JDeveloper (Windows, Linux) включают в себя 32-битные JDK, причем как правило не самых актуальных версий;
  • мне не известно, как саппорт отреагирует на возникновения проблем на продуктивном окружении созданном из JDeveloper (что-то мне подсказывает, что они будут рады отправить вас эмулировать проблему на окружении, созданном с помощью ADF Runtime);
  • в такой конфигурации отсутствует возможность добавить в домен Enterprise Manager Fusion Middleware Control, а это весьма полезная веб-консоль, без который некоторые настройки делать весьма нетривиально.  Например, попробуйте руками поправить файл system-jazn-data.xml для связи Application Roles вашего ADF-приложения и групп, которые видит Weblogic через Authentication-провайдеры.
Для создания продуктивного окружения ADF (на одной машине, не рассматриваем тут кластер из более чем 1 машины) Вам потребуется установить следующее ПО:
  • JDK (HotSpot или JRockit) определенной версии, сертифицированной с той версией Weblogic, который вы будете ставить дальше. См пост Моя любимая вкладка на support.oracle.com
  • Weblogic поддерживаемой версии. Как именно? Если приложение написано на  ADF 11gR1 - читаем данный документ,  если на ADF 11gR2 - вот нужная ссылка.
  • Application Development Runtime. В случае ADF 11gR1 все просто - какую версию JDeveloper использовали при разработке - такой Runtime и устанавливаем.  В случае ADF 11gR2 все несколько сложнее, как как дистрибутивов Runtime для 11gR2 нет. Вместо этого нам потребуется установить Runtime от 11gR1 и накатить пару патчей.  Подробно все описано на support.oracle.com в документе How To Install the ADF Runtime Libraries 11g Release 2 in WebLogic Sever 10.3.5 / 10.3.6 ? [ID 1328698.1]
Мы закончили с инсталляцией бинарных артефактов, переходим к созданию домена, процедура описана в первом видео.

Unable to display content. Adobe Flash is required.

Далее надо выполнить нацеливание ADF-библиотек на Managed-сервера, а также, в случае ADF 11gR2,  нацеливание  JSF 2.0 библиотек. После этого можно запускать сервера. Об этом - во втором видео.
Update 1: в видео команда upgradeJRF выполняется до того, как на Managed Server'е выполняется Apply JRF Template.  В результате upgradeJRF нацеливает JSF 2.0 - библиотек только на AdminServer, и мы получаем ошибки при деплое приложения в 3-м видео. Так как нажатие кнопки Apply JRF Template на самом деле сводится к выполнению WLST-команды, то рекомендуется заменить выполнение команды upgradeADF из видео на выполнение следующих команд:

 domainlocation = 'C:\\dev\\Oracle\\FMWDomains\\domains\\SampleADFDomain'
 applyJRF('*', domainlocation);
 closeDomain();
 upgradeADF(domainlocation);
после этого можно пропустить ту часть, где в EM FMW Control мы нажимаем кнопку Apply JRF Template

Unable to display content. Adobe Flash is required.
Теперь мы готовы развернуть тестовое ADF-приложение в нашем домене, об особенностях развертывания - в третьем видео.

Unable to display content. Adobe Flash is required.
В результате мы получили работающий домен с ADF Runtime библиотеками, кластером из 1 managed-сервера и развернутым в данном кластере ADF-приложением. В следующий раз мы рассмотрим как в данную конфигурацию добавить поддержку Oracle Web Services Manager.


3 комментария: