2010-08-24 2 views
0

Я пытаюсь использовать образец брокера, который поставляется с ActiveMQ 5 с MDB, развернутым на JBoss 5.1 AS.Jboss 5.1 ActiveMQ 5 автономный брокер MDB setup

Я развернул activemq rar в каталог развертывания. Я развернул activemq-jms-ds.xml для развертывания/обмена сообщениями, который определяет мои фабрики соединений. У меня есть брокер, работающий на localhost: 61616, как определено в конфигурации connectionfactory.

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

21:40:17,328 ERROR [JmsActivation] Unable to reconnect [email protected]([email protected] destination=MATT.TEST destinationType=javax.jms.Queue tx=true durable=false reconnect=10 provider=java:/DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=60000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=5) 
javax.naming.NameNotFoundException: MATT.TEST not bound 
at org.jnp.server.NamingServer.getBinding(NamingServer.java:771) 
at org.jnp.server.NamingServer.getBinding(NamingServer.java:779) 
at org.jnp.server.NamingServer.getObject(NamingServer.java:785) 
at org.jnp.server.NamingServer.lookup(NamingServer.java:443) 
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:726) 
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:686) 
at javax.naming.InitialContext.lookup(InitialContext.java:392) 
at org.jboss.util.naming.Util.lookup(Util.java:222) 
at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupDestination(JmsActivation.java:464) 
at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:352) 
at org.jboss.resource.adapter.jms.inflow.JmsActivation.handleFailure(JmsActivation.java:292) 
at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:733) 
at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205) 
at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:619) 

Я действительно установить на использовании стандартного брокера, потому что я не хочу, чтобы определить клиента, чтобы помещать сообщения в очередь. Я предпочитаю использовать веб-консоль, которая поставляется вместе с примером брокера. Есть что-то, что мне не хватает, потому что я не могу понять, что случилось.

Примечание: Я пытался The ActiveMQ Jboss setup guide, но я боюсь, что это слишком устаревшее существо для ActiveMQ 4.

ответ

1

Я нашел ответ погребен внутри this forum post.

После выполнения вышеописанного урока вам нужно добавить @ResourceAdapter («ваш-activemq-rar-name.rar») вверху вашего класса MDB за пределами перечисления @MessageDriven до определения класса. Это говорит, что развертыватель должен упаковать адаптер ресурсов ActiveMQ с помощью EJB. Обратите внимание, что после поиска документации jboss в течение как минимум 3 часов, прежде чем смотреть на форумы, я ни разу не заметил упоминания @ResourceAdapter! Надеюсь, это спасет кого-то много головных болей, которые у меня были.

1

Любой, кто застрял на этой проблеме, может захотеть проверить this post. Итак, так просто. Нет файлов источника данных, не настроен ra.xml.

+0

Да, это в основном то, что я закончил делать! И все же спасибо за ссылку –

 Смежные вопросы

  • Нет связанных вопросов^_^