Всего три дня назад команда из Томаса Дизлера ( @tdiesler ) выпустила версию 2.0.0.CR1 подсистемы WildFly-Camel, которая позволяет добавлять маршруты Camel Routes как часть конфигурации WildFly. Маршруты могут быть развернуты как часть приложений JavaEE. Компоненты JavaEE могут получить доступ к API-интерфейсу Camel Core и различным API-интерфейсам Camel Component.
В этом выпуске, в частности, добавлен ряд новых верблюжьих компонентов в подсистему и добавлена поддержка режима домена WildFly. Помимо упаковки и начальной загрузки Camel в Java EE 7, эта подсистема устанавливает Camel непосредственно на ваш сервер WildFly 8.x. Насколько я знаю, он работает даже с последней версией 8.2.0. Финал, но не проверен. Не то, чтобы в Java EE 7 был очень легкий и простой способ загрузить Camel , но этот подход позволяет еще больше интегрировать со стандартами Java EE. Конечная цель для подсистемы — предоставить функции Camel в качестве опции для непосредственного использования в WildFly без необходимости что-либо настраивать или развертывать. В этом главное отличие простого модуля от полной подсистемы.
Начиная
Установите WildFly 8.x, загрузив «Java EE7 Full & Web Distribution» с сайта wildfly.org . Установите, просто распаковав его в папку по вашему выбору. Следующим шагом является загрузка патча для дистрибутива (53 МБ, tar.gz) для WildFly из репозитория JBoss Maven. После загрузки перейдите в папку WildFly и распакуйте в нее архив. Вот и все. Теперь запустите автономный или доменный режим с соответствующим * -camel.xml:
1
|
$ bin/standalone.sh|bat -c standalone-camel.xml |
Еще несколько настроек
После того, как мы это сделали, вам нужно добавить еще нескольких пользователей. Прежде всего пользователь управления.
1
|
$ bin/add-user.sh|bat |
Называй как хочешь. По соображениям удобства я склонен называть его admin с паролем admin. Но имейте в виду, что это худшая практика, которую вы можете применить!
После этого добавьте еще одного пользователя приложения. Чтобы упростить его, мы просто назовем его одним и тем же небезопасным паролем.
Изучение того, что там
После интеграции подсистемы в WildFly вы можете найти модули Apache Camel и JBoss в папке модулей. Папка standalone \ deployments содержит два war-файла. Одним из них является HawtIo, а другим — wildfly-camel.war, который в основном является примером camel-cdi, но об этом позже. Прежде всего, укажите в своем браузере: http: // localhost: 8080 / hawtio / и войдите в систему с созданным пользователем приложения.
Вы можете видеть, что вкладки ActiveMQ и Camel включены, это означает, что оба модуля были развернуты и обнаружены HawtIo. Развернув вкладку Camel, вы увидите два развернутых маршрута. Для интеграции используются версии Apache Camel 2.14.0, HawtIo 1.4.22 и Arquillian 1.1.2.Final.
Особенности высокого уровня
Стратегия wildfly-camel заключается в том, что пользователь может «просто использовать» основные / компонентные API верблюда в развертываниях, которые WildFly уже поддерживает. Другими словами, Camel должен «просто работать» в стандартных развертываниях Java EE. Двоичные файлы предоставляются платформой. При развертывании не нужно беспокоиться о деталях модуля / проводки.
Определение и развертывание верблюжьих контекстов может быть сделано разными способами. Вы можете либо напрямую определить контекст в конфигурации вашего автономного-camel.xml сервера, либо развернуть его как часть вашего веб-приложения либо в виде отдельного XML-файла с предопределенным суффиксом файла -camel-context.xml, либо в качестве части другого поддерживаемого WildFly. развертывание в виде файла META-INF / jboss-camel-context.xml.
В тестовом наборе WildFly Camel используется управляемый контейнер WildFly Arquillian. Это может подключиться к уже запущенному экземпляру WildFly или, при необходимости, запустить автономный экземпляр сервера. Внедрен ряд тестовых обогащений, которые позволяют вам вводить эти специфические типы WildFly Camel в ваши тестовые наборы Arquillian; Вы можете добавить CamelContextFactory или CamelContextRegistry как @ArquillianResource.
Следующие шаги
Вы можете просто отменить развертывание wildfly-camel.war и начать все заново с вашего собственного приложения. Вы можете либо покопаться в существующих примерах на GitHub, либо подождать, пока мой следующий блог не расскажет вам об этом.
Если вы не хотите возиться с установкой и исправлением, вы можете посмотреть на готовые изображения докеров, которые были опубликованы в wildflyext / wildfly-camel .
Ссылка: | Подсистема Camel для WildFly 8 интегрирует Java EE — начало работы от нашего партнера по JCG Маркуса Эйзела (Markus Eisele) из блога « Разработка программного обеспечения для предприятий с использованием Java» . |