Бин, управляемый сообщениями, с Java Message Queue - PullRequest
2 голосов
/ 16 марта 2010

У меня возникла следующая проблема при развертывании моего приложения.

Он использует JMS и удаленный openMQ для связи между серверами. Проблема в том, что соединение не является полностью надежным, поэтому оно может быть вверх или вниз. Для переподключения я установил свойство jfishappnect glassfish, чтобы оно переподключалось, если в какой-то момент соединение будет потеряно. Проблема возникает, когда я пытаюсь развернуть приложение, и нет соединения. Похоже, что он продолжает повторять попытку подключения, но приложение не завершает развертывание, пока соединение не станет доступным.

Можно ли настроить его так, чтобы развертывание продолжалось, даже если соединение отсутствует и повторяется до тех пор, пока соединение не станет доступным?

Большое спасибо.

Редактировать : Я пытаюсь запустить инициализацию MDB в другом потоке. Я пробовал оба

Я пытаюсь назначить другой поток для MDB двумя способами, изменяя sun-ejb.jar.xml

        <bean-pool>
            <steady-pool-size>1</steady-pool-size>
            <resize-quantity>1</resize-quantity>
            <max-pool-size>1</max-pool-size>
            <pool-idle-timeout-in-seconds>60</pool-idle-timeout-in-seconds>
        </bean-pool>

, а также с

        <use-thread-pool-id>a-new-thread-pool</use-thread-pool-id>

Но мне не повезло. Похоже, что он ожидает завершения этого потока, так как похоже, что он получает новый поток, но он ожидает окончания этого потока, чтобы завершить запуск приложения, поэтому, в моем случае, приложение не будет правильно развернуто ..

Редактировать 2 Я пытался запустить службу jms также в другом потоке ...

asadmin create-resource-adapter-config --threadpools a-new-thread-pool jmsra

Не повезло тоже.

Ответы [ 2 ]

1 голос
/ 27 марта 2010

С JMS-провайдером Glassfish по умолчанию это невозможно. Мне наконец удалось это сделать, изменив адаптер JCA на

https://jmsjca.dev.java.net/

0 голосов
/ 17 марта 2010

Можете ли вы подумать о создании отдельного потока, который подключается к JMS, так что основные приложения продолжают работать без блокировки.

...