MDB不会在独立的Hornetq上消耗来自队列的消息

时间:2014-04-04 12:12:14

标签: java jboss hornetq wildfly

我正在使用wildfly-8.0.0.Final和hornetq-2.4.0.Final 我试图使用MDB从hornetq服务器上的队列中读取消息。我的MDB正在使用wildfly。

首先我从standalone.xml(wildfly)中删除了所有消息传递配置。在hornetq-2.4.0.Final中,我在hornetq-jms.xml中添加了我的队列。

在我的MDB中,我给了

@MessageDriven(activationConfig = {
    @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
    @ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/MyQueue"),
    @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"),
    @ActivationConfigProperty(propertyName = "connectorClassName", propertyValue = "org.hornetq.core.remoting.impl.netty.NettyConnectorFactory"),
    @ActivationConfigProperty(propertyName = "connectionParameters", propertyValue = "host=localhost;port=5445")})
   @ResourceAdapter("hornetq-ra.rar")

然后我启动了两个服务器(wildfly,hornetq),hornetq服务器顺利启动但在野生飞行中部署MDB(M2MEventDistributor)时,它抛出了错误,

    JBAS014613: Operation ("deploy") failed - address: ([("deployment" => "M2MEventDistributor.jar")]) - failure description: {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"M2MEventDistributor.jar\".component.M2MEventDistributorMDB.CREATE is missing [jboss.ra.hornetq-ra]"]} 

    2014-04-04 13:32:29,042 INFO  [org.jboss.as.controller] (DeploymentScanner-threads - 1)JBAS014774: Service status report
 JBAS014775:    New missing/unsatisfied dependencies:
  service jboss.ra.hornetq-ra (missing) dependents: [service jboss.deployment.unit."M2MEventDistributor.jar".component.M2MEventDistributorMDB.CREATE] 

我发现问题出在hornet-ra适配器上, 我在互联网上搜索了这个问题并提到了链接,并按照说明进行了操作,但运气不好,没有任何帮助。

网络,论坛,博客和社区中的每个人都在谈论部署hornetq-ra.rar并更改该rar文件中的ra.xml文件。在wildfly中,我甚至找不到任何关于hornet-ra.rar和ra.xml的线索。但我在wildfly模块中找到了hornet-ra-2.4.1.Final.jar然后我将jar添加到MDB类路径中,并在jboss-deployment-structure.xml文件中也提到了。然后我也得到同样的错误。

然后我按照这个链接https://community.jboss.org/message/756775,尝试了由andy taylor给出的步骤,除了有关hornet-ra.rar和ra.xml文件的内容,因为我不知道我在哪里找到他们。

然后我的MDB已部署但不消耗队列中的消息。在日志中我发现了一行,

 [org.hornetq.ra] (default-threads - 1) HQ151000: awaiting topic/queue creation queue/MyQueue

所以,我的问题是,

1)如何使用hornetq-ra适配器来消耗独立的hornetq服务器上的队列消息?
2)我可以在wildfly-8.0.0.Final中找到hornet-ra.rar和ra.xml文件,我该如何部署和使用呢?
3)我做错了什么,我该怎么做才能完成我的工作?

如果您需要我立即提供的任何信息和文件...... 任何人都可以帮助我解决这个问题......提前谢谢你..

0 个答案:

没有答案