![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Kizja |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 15.7.2007 Репутация: нет Всего: нет |
Привет, у меня возник вопрос про JMS: если например есть два приложения, одно из которых посылает сообщения через JMS, а другое их слушает, то всё ясно - в примерах обычно показывается, что в while (true) цикле проверяется не пришло ли новое сообщение и если пришло, то оно обрабатывается...
А что делать, если эти два приложения должны обмениваться сообщениями между собой, но так же и выполнять другие действия параллельно с ожиданием сообщений ? Т.е. у меня есть два приложения и в них я хочу прилепить посылку и приём сообщений и не знаю как сделать, чтобы они работали как и раньше, но и плюс к этому ждали так же посылаемые им сообщения. В таком случае надо использовать отдельный Thread для приёма сообщений или как надо сделать ? Было бы замечательно увидеть какой-нибудь пример... В нете искал, но там в основном именно так, что приёмник только занимается тем, что висит и слушает, ничего другого не делая... |
|||
|
||||
| MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Привет. А что за архитектура такая?
Почему нельзя пойти стандартными путями, используя средства J2EE: EJB? Тебе надо взять какой-нибудь сервер приложений и посмотреть примеры как посылку и прем сделать с помощью EJB. Можно, конечно, еще посмотреть в сторону каких-нибудь сторонних реализаций MQ, например: ActiveMQ. Я просто впервые с JMS столкнулся именно в сервере приложений. Это был JBOSS. И таких вопросов у меня не возникало. А вообще представленная тобой логика реализуется с помощью ESB, но это совесем другая история, хоть она и базируется на JMS. -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
| AxNe0 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 24.4.2006 Где: St. Petersburg Репутация: нет Всего: 5 |
согласен, что лучше использовать готовый сервер и ejb. Message-driven beans, кажется полностью удовлетворяют требованиям
|
|||
|
||||
| Kizja |
|
||||||||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 15.7.2007 Репутация: нет Всего: нет |
MisterCleric, AxNe0 спасибо за ответ!
Решил использовать spring + message-driven pojo на jboss сервере. Закинул war в JBOSS_HOME\server\default\deploy, сообщения стали приниматься, но возникла такая проблема, что принимаются лишь javax.jms.TextMessage и javax.jms.MapMessage, возможно ещё какие-то другие, но факт тот, что вылазит ошибка при приёме javax.jms.ObjectMessage:
Изменения в коде между TextMessage и ObjectMessage лишь в том, что для TextMessage выполняется:
и посылка:
а для ObjectMessage:
и посылка:
Класс Person:
Судя по этой части ошибки:
он не может найти класс, который получает из сообщения, но он есть в war архиве, не понимаю, почему он его не видит ? Это сообщение отредактировал(а) Kizja - 21.12.2009, 10:12 |
||||||||||||||
|
|||||||||||||||
| Kizja |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 15.7.2007 Репутация: нет Всего: нет |
С этой ошибкой трахаюсь уже вторые сутки, не могу понять как исправить...
Если я не ошибаюсь, то возможно у меня что-то не так в pom.xml и мавен пакует неправильно war файл, в результате чего вроде как jboss не видит при получении сообщения нужные классы. Запускаю на jboss-5.1.0.GA. Это сообщение отредактировал(а) Kizja - 23.12.2009, 21:58 |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |