В 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 ( здесь и здесь ), но не получил там никаких ответов.