На прошлой неделе Oracle сделала доступным для скачивания набор дистрибутивов сервера приложений нового поколения, основы линейки продуктов Oracle Fusion Middleware, - WebLogic Server 12c. Данный продукт доступен как в виде инсталляторов под Windows, Linux и Mac OS X, так и в виде двух ZIP-архивов, предназначенных исключительно для разработчиков. В данной заметке мы рассмотрим как установить WebLogic Server из данных архивов и создать демонстрационный домен, а так же написать и развернуть в данном домене небольшое Java EE 6 приложение, используя Oracle Enterprise Pack for Eclipse 12.1.1.
Установка WebLogic Server 12c
Дистрибутив WebLogic Server 12c состоит из двух архивов: Zip Distribution for Mac OSX, Windows and Linux, содержащего базовые компоненты сервера, и Supplemental zip distribution, содержащего страницы локализации для служебных приложений, примеры и шаблоны тестовых доменов. Для знакомства с сервером приложений достаточно скачать только первый архив, перейдя по ссылке.
После скачивания необходимо распаковать архивы в некоторый каталог. Данный каталог в дальнейшем будет именоваться как MW_HOME и должен быть прописан в качестве значения соответствующей переменной окружения. Под Windows установить значение переменной окружения можно с помощью команды set:

Так же необходимо установить путь к JDK в качестве значения переменной окружения JAVA_HOME. Важно: данный путь не должен содержать пробелов.
После установки значений переменных окружений можно запускать конфигурацию сервера - файл configure.cmd, расположенный в корне каталога MW_HOME. При выполнении данного файла будут распакованы архивы с библиотеками. Данный процесс может занять некоторое время, о чем нас любезно проинформирует надпись в консоли:

В заголовке окна будет отображаться количество оставшихся нераспакованными библиотек:

После завершения распаковки конфигуратор установит значения всех необходимых переменных окружения и подготовит сервер приложений к работе.

Создание демонстрационного домена
После установки сервера приложений необходимо создать домен. Домен в терминах WebLogic - группа серверов приложений, администрируемая как единое целое с помощью единственного администрирующего сервера (Admin Server). Сервера, компоненты домена, не являющиеся администрирующим сервером, называются управляемыми серверами (Managed Servers). Управляемые сервера, объединенные в домен, могут быть сгруппированы в один или несколько кластеров.
Для создания домена необходимо запустить программу MW_HOME\wlserver\common\bin\config.cmd. Через некоторое время после запуска появится мастер создания домена. На первом шаге данного мастера необходимо выбрать желаемое действие: создать новый домен или расширить существующий.

На следующем шаге мастера необходимо выбрать компоненты создаваемого домена. Так как домен нам нужен только для тестирования базовых возможностей сервера приложений, то никакие дополнительные компоненты не нужны.

Затем следует задать наименование домена и каталог, в котором будут сохранено его содержимое. Oracle рекомендует создавать каталог домена вне MW_HOME. В дальнейшем будем обозначать выбранный каталог как DOMAIN_HOME.

Теперь необходимо задать логин и пароль администратора домена. По-умолчанию логин для администратора домена - weblogic.

После этого необходимо задать режим работы домена (Development или Production) и JDK. По-умолчанию доступна JDK, на которой запущен мастер конфигурации домена. При необходимости можно выбрать другую JDK.

На следующем шаге мастера можно выбрать какие компоненты требуется дополнительно сконфигурировать. Для того, чтобы продемонстрировать возможности по взаимодействию Eclipse и кластера серверов WebLogic, необходимо помимо Admin Server'а, создаваемого в домене по-умолчанию, добавить несколько Managed Server'ов. Для этого необходимо отметить галочкой пункт Managed Servers, Clusters and Machines.

Добавим с помощью кнопки Add... два Managed Server'а: demo_server1 и demo_server2, назначив им порты 7003 и 7004, соответственно.

Созданные сервера необходимо объединить в кластер - demo_cluster. Для кластера можно указать используемый тип обмена сообщениями между серверами: unicast или multicast, порты и адрес кластера.

После создания кластера в него необходимо добавить Managed Server'а.

Все сервера располагаются на одной или нескольких машинах. Имеются ввиду физические машины. Машина характеризуется названием и парой адрес/порт, на которых работает NodeManager - утилита, используемая для удаленного управления серверами, устанавливается одна на машину.

На следующем шаге мастера необходимо задать отношение между серверами и машиной. Т.к. у нас одна машина, то все сервера необходимо проассоциировать с ней.

Последний шаг мастера - информационный. На нем приведено полное описание домена.

Для создания домена необходимо нажать кнопку Create. Появится окно с изображением линейки прогресса и перечислением выполненных шагов. В случае успешного создания домена, станет доступной кнопка Done - выход из мастера.

Для запуска серверов служат файлы, расположенные в каталоге DOMAIN_HOME/bin: startWebLogic.cmd - для AdminServer'а и startManagedWebLogic.cmd - для Managed Server'ов, соответственно. Обязательным аргументом последней команды является имя Managed Server'а.

После начала запуска Managed Server'ов они запросят логин и пароль администратора домена. Чтобы каждый раз не вводить данную информацию вручную, необходимо в каталоги серверов (DOMAIN_HOME/servers/SERVER) скопировать каталог security из каталога Admin Server'а (DOMAIN_HOME/servers/AdminServer).
Необходимо дождаться перехода всех серверов в состояние RUNNING. Домен готов к работе.

Консоль управления Oracle WebLogic Server Administration Console доступна по адресу http://host:port/console. По сравнению с версией 11g изменился фон консоли.

Если вызвать пункт меню base_domain -> Environment -> Servers, то откроется страница, содержащая информацию о состоянии серверов домена.

Если вызвать пункт меню Deployments, то откроется список установленных приложений. Т.к. домен только что создан, то данный список пуст.

Создание и развертывание Java EE 6-приложения с помощью OEPE
Для работы с сервером приложений WebLogic Server 12c можно использовать недавно выпущенный Oracle Enteprise Pack for Eclipse 12.1.1 (OEPE), который доступен для скачивания с OTN.

Чтобы создавать и разворачивать приложения на сервере WebLogic, необходимо прежде всего создать в Eclipse подключение к данному серверу. Для этого служит пункт New -> Server контекстного меню вида Servers из которого запускается мастер создания подключения к серверу приложений, на первой вкладке которого необходимо выбрать тип сервера, его хост и наименование.

На втором шаге мастера необходимо указать каталог, в котором установлен сервер приложений (MW_HOME/wlserver), и путь к JVM.

На третьем шаге мастера необходимо выбрать тип сервера приложений: локальный или удаленный и указать каталог домена.

После нажатия кнопки Finish созданное соединение отобразится на виде Servers

Создадим демонстрационный проект, содержащий один сервлет и одну страницу статического контента. Данный проект должен иметь тип Dynamic Web Project. Структура каталогов проекта следующая:

Следует обратить внимание на отсутствие файла web.xml. По спецификации Java EE 6 данный файл не является обязательным.
Код сервлета предельно прост: на страницу в браузере выводится строка Hello, World. Сервлет регистрируется с помощью аннотации WebServlet, являющейся частью спецификации Servlet API версии 3.0.

Статическая страница выводит сообщение Welcome!.

После создания проекта его необходимо развернуть на сервере приложений. Для этого служит пункт Add and Remove... контекстного меню данного сервера.

В окне добавления проекта на сервер необходимо перетащить проект demo в правую колонку и нажать кнопку Finish.

Сервлет будет доступен по адресу http://localhost:7001/demo/demo, страница со статическим контентом - по адресу http://localhost:7001/demo/demo.html.


По-умолчанию приложение разворачивается только на AdminServer'е. Чтобы приложение разворачивалось на кластере, необходимо выполнить соответствующие настройки, для чего воспользоваться мастером редактирования свойств соединения с сервером приложений, доступным из пункта Properties контекстного меню данного сервера. Настройки разворачивания приложения находятся на странице WebLogic -> Publishing данного мастера. Следует поменять режим публикации на Publish as an exploded archive.

Выбрать сервера, на которые будет выполняться публикация приложения, можно на странице WebLogic -> Publishing -> Advanced. Чтобы приложение разворачивалось на кластер demo_cluster, необходимо перетащить его в правую часть поля Additional WebLogic Server instances and clusters as deployment targets.

После нажатия кнопки OK приложение начнет разворачиваться на Managed Server'ах кластера.

Если развертывание выполнено успешно, то приложение отобразится в дереве Published Modules сервера WebLogic, расположенного на виде Servers

... и будет доступно по адресу http://localhost:7003/demo/demo

... и http://localhost:7004/demo/demo.

Дополнительные материалы
- Создаем кластер серверов приложений WebLogic: балансировка нагрузки, обнаружение ошибок, репликация сессий;
- Анонсирован WebLogic Server 12c;
- WebLogic Server 12c - 5 Mins with the Zip File Distribution;
- Официальная документация.
З.Ы. Судя по личным впечатлениям сервер легче нежели в версии 11g. Суммарное потребление памяти тремя серверами составляет 1.8 Гб. Ждем Oracle SOA Suite 12c!.
Понравилось сообщение - подпишитесь на блог

3 комментария:
Отличная статья, Спасибо!!!:)
Подойдет ли эта утилита для развертывания следующей системы: нужно разместить набор установленных программ на одной из машин в сети, и через веб интерфейс иметь возможность их вызова на стороне клиента!? (пример: устанавливаем word, acrobat и выбирая из базы нужный проект, подгружается документация из БД (не важно как)и вот эту документацию надо просмотреть с помощью этих программ предустановленных на отдельной машине)
Спасибо, очень помогло при первом запуске веблоджика!
Отправить комментарий
Любой Ваш комментарий важен для меня, однако, помните, что действует предмодерация. Давайте уважать друг друга!