Как развернуть автономное приложение Java на JBoss вместе с другими веб-приложениями - PullRequest
0 голосов
/ 21 апреля 2019

Я пишу Java-программу, которая будет продолжать прослушивать очередь JMS / ActiveMQ для любых сообщений.Когда в очереди публикуется сообщение, эта программа забирает сообщение и обрабатывает его.Эта программа имеет метод main().Теперь я хочу развернуть эту программу в JBoss / Wildfly.Уже есть несколько веб-приложений, развернутых на JBoss.Я хочу развернуть эту программу также на JBoss, чтобы избежать ручного запуска.Каждый раз, когда запускается сервер JBoss, эта программа также должна запускаться и прослушивать очередь.

Если основной метод не может быть использован, мне нужен совет по альтернативному решению этого требования.

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

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

Что вы можете сделать:

1) Преобразуйте ваше автономное Java-приложение в веб-приложение и определите сервлет.Этот сервлет начнет ваш процесс.Таким образом, в этом случае, когда сервер запускается, он развернет ваш пакет (war или ear), инициализирует ваш сервлет и затем запустит ваш процесс.2) Превратите ваше автономное Java-приложение в веб-приложение с помощью планировщика (Linux Quartz), чтобы запустить ваш процесс.Это лучше, чем первый вариант, потому что вам не нужно создавать servt.

PS: Когда вам нужно запустить отдельное приложение java, мы обычно используем другие сервисы для этой работы (например, Control-M или вкладка cron в Linux)

0 голосов
/ 21 апреля 2019

Вы должны использовать компонент, управляемый сообщениями (MDB). Этот учебник немного устарел, но все еще полезен для вас.

...