JBoss 5.1.0 + EJB 3.1 + JMS - PullRequest
       45

JBoss 5.1.0 + EJB 3.1 + JMS

1 голос
/ 14 сентября 2011

Может кто-нибудь посоветовать мне, что мне нужно сделать в jboss для развертывания бина, управляемого сообщениями.В частности, я ищу ответы на следующие вопросы:

  1. Нужно ли мне определять тему jms, фабрику соединений и т. Д. В файлах конфигурации, если да, то где и как
  2. Где ябудет указывать URL-адрес для удаленного JMS-сервера

Любые полезные ссылки или фрагменты кода действительно приветствуются

ОБНОВЛЕНИЕ № 1: Возможно, я не очень хорошо объяснил себя, мое разъяснение касается архитектуры.У меня есть внешний JMS-сервер, который развернут на отдельной машине, и я хочу создать EJB3 MDR Bean для получения сообщений от определенного topc.Я знаю все свойства, такие как хост, порт, имя пользователя и пароль, и я могу отправлять и получать сообщения через API JMS.То, что я хочу сделать, это создать и правильно настроить MDR Bean поверх jboss, но я не уверен, куда поместить все эти настройки, такие как хост, порт, имя пользователя, пароль и т. Д.

1 Ответ

0 голосов
/ 14 сентября 2011

Ваш компонент Message Driven Bean будет развернут в контейнере с использованием стандартного дескриптора развертывания, совместимого со спецификацией EJB, или аннотаций на самом MDB.

Вот пример из вики-сообщества JBoss. Он немного сложен, так как в нем есть куча дополнительных вещей, включая поддержку транзакций, внедрение сессионных компонентов и т. Д. Но он демонстрирует, как создать EJB3 MDB из аннотаций. Возможно, стоит поиграть, чтобы посмотреть, что вы можете пропустить. Вам также может понадобиться немного поиграть с ним, чтобы заставить его работать (например, у вас может не быть компонента для IMySessionBean - так что, возможно, вы просто полностью избавитесь от этого и замените его на println () или что-то другое, чтобы получить себя) начало)

Что касается вашего производителя сообщений. Если его автономное Java-приложение, URL-адреса и т. Д. Будут предоставлены через свойства, предоставленные вашему JNDI InitialContext при создании ConnectionFactory. Это продемонстрировано в этом примере

Если вы находитесь в контейнере, обратитесь к первому примеру выше, в котором также приведен пример использования фабрики соединений JMSXA (особой фабрики соединений, специфичной для контейнера, которая имеет дополнительные функции, связанные с пулом соединений JCA и т. Д.).

...