Развертывание интерактивных приложений на JBoss - PullRequest
1 голос
/ 23 августа 2011

В JBoss AS 7 есть способ интерактивного развертывания приложения? Другими словами, вместо того, чтобы вручную создавать дескрипторы развертывания JBoss перед развертыванием (например, jboss-web.xml), существует ли способ для JBoss запросить для развертывателя информацию, которая ему необходима для успешного развертывания и / или есть API, который может быть вызван программно или через сценарии для этого? Например, если приложение определяет ссылку на ресурс или запись среды, которая аннотирована в коде (@Resource), как развертывателю узнать, что эта ссылка на ресурс должна быть связана во время развертывания?

В некоторых случаях я использовал IBM WebSphere Application Server в качестве основного сервера приложений Java EE, и он предоставляет API-интерфейсы Java, команды wsadmin и мастер GUI в консоли администратора, который запрашивает у развертывателей необходимую информацию о развертывании. для развертывания приложения и создания собственных файлов пользовательских дескрипторов во время развертывания. Я надеюсь, что другие серверы приложений, в частности JBoss 7, также предоставляют аналогичные функции.

Одна из целей состоит в том, чтобы иметь возможность автоматизировать развертывание разнообразного набора портативных приложений Java EE (т. Е. Приложений, которые не будут иметь специфичных для JBoss дескрипторов, содержащих информацию о развертывании), и предотвратить развертывание вручную выполнение развертываний из-за того, что они хорошо знакомы не только с дескрипторами развертывания приложений и модулей, но, что более важно, со всеми аннотациями, содержащимися в коде, которыми нужно управлять во время развертывания (например, аннотациями @Resource) ).

В частности, я ищу выполнение этого требования в спецификации Java EE :

EE.2.12.4 Дескрипторы развертывания и аннотации

Поставщик продуктов Java EE должен предоставлять инструмент развертывания, который интерпретирует дескрипторы развертывания Java EE и аннотации файлов классов и позволяет Deployer сопоставить требования компонента приложения с возможностями конкретного продукта и среды Java EE.

Хотя спецификация несколько двусмысленна относительно того, что это означает и как она реализована, на мой взгляд, WebSphere Application Server прекрасно выполняет это требование, тогда как многие другие серверы приложений (например, JBoss, кажется) требуют создания вручную. пользовательских дескрипторов до развертывания не хватает.

Также обратите внимание, что я отправил этот же вопрос на форумы сообщества JBoss ( здесь и здесь ), но не получил там никаких ответов.

Ответы [ 3 ]

0 голосов
/ 24 августа 2011

В дополнение к консоли управления, которую предлагает jpredham, есть также плагин maven, который может делать то, что вы ищете.Выпущена новая версия 7.0.1, и в блоге описывается, как добавлять ресурсы с помощью плагина maven.

0 голосов
/ 08 декабря 2011

Нить несколько старая, я знаю, но все равно.Я работал с Websphere в прошлом и знаю инструмент развертывания, который вы описываете.И нет, ничего подобного нет для любой версии JBoss.

Странно, на самом деле, если учесть формулировку спецификации («... требуется предоставить инструмент развертывания»)

0 голосов
/ 23 августа 2011

Я думаю, что вы ищете JBoss Web Management Console , которая предоставляет веб-интерфейс для развертывания файлов EAR, WAR и JAR. Он имеет некоторые возможности администрирования и обслуживания, но не предлагает динамическое управление зависимостями.

...