Нужно ли устанавливать EE Server для использования JMS? - PullRequest
2 голосов
/ 14 сентября 2010

У меня возник вопрос об использовании JMS (Java Message Queue). Где-то в документации я видел, что все, что мне нужно для использования JMS - это jms.jar на машине, на которой собирается работать клиент. Но я все еще не уверен, нужен ли мне Glassfish или JBoss, также установленный на машине. Кто-нибудь может мне сказать, действительно ли нужен только jms.jar или мне нужно что-то еще установленное на машине?

Спасибо, Serhiy.

Ответы [ 3 ]

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

Вам нужен jms.jar для доступа к темам и очередям JMS. Но чтобы иметь работающую настройку JMS, вам нужен JMS-провайдер. На серверах приложений есть JMS-провайдеры. Существуют автономные JMS-провайдеры, такие как Apache ActiveMQ или HornetQ:

  • вам нужны jar-провайдеры jms на вашем пути к классам, чтобы создавать его конкретные классы (JMS API определяет только контракт)
  • вам нужен JMS-провайдер, работающий и обрабатывающий входящие и исходящие сообщения.
0 голосов
/ 14 сентября 2010

На developerWorks есть учебное пособие , которое может вас заинтересовать и которое описывает, как запустить программу JMS вне среды Java EE с использованием WebSphere MQ.

Вопрос о том, нужно ли вамчто-то другое, чем JAR-файл JMS, это другое дело.Лучший ответ - всегда использовать установочный носитель, предоставленный поставщиком.Я не знаю о JBoss, но с внедрением IBM этот носитель включает диагностические утилиты, и если вы просто возьмете файлы jar, это может не поддерживаться.Другие поставщики также могут иметь проблемы с поддержкой, если вы просто берете файлы JAR, но у меня нет подробностей.

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

Ну, на самом деле JMS - это просто стандартный API для обмена сообщениями. Вам придется использовать существующую реализацию, а также поставщика, чтобы использовать его.

Если вы используете JBOSS, взгляните на HornetQ

...