【问题标题】:How do you get camel to create a queue before it's produced to?你如何让骆驼在生产之前创建一个队列?
【发布时间】:2014-02-14 10:56:21
【问题描述】:

我的设置是这样的:-

  • activemq 5.8
  • JBoss Fuse ESB 6.0

队列仅在添加消费者时自动创建,即在<from uri="activemq:my-queue" /> 中,或者当消息发送到不存在的队列时。

在我的情况下,这是错误处理程序的一部分,它是我遇到问题的 DLQ。它没有任何消费者,因此仅在发送消息时创建。我希望能够预先实例化队列,以便能够检查它的关联 MBean 属性(通过 Jolokia)。显然,在消息进入 DLQ(希望永远不会)之前它不存在,这意味着没有要查询的 MBean。

现在我知道我可以直接在 activemq 配置中创建队列,但由于各种原因,这是一条难以遵循的路径。

所以问题是这样的......

如何让骆驼在生产之前创建一个队列并且它没有消费者?

我尝试定义<endpoint uri="activemq:my-dlq" />,但我认为这只是抓住了稻草,因为它只提供了一个钩子来创建消费者或生产者,而实际上并没有创建队列。

【问题讨论】:

    标签: apache-camel activemq jbossfuse


    【解决方案1】:

    您可以使用它应该创建的许多启动目标来配置 activemq。您在 activemq.xml 配置文件中执行此操作。

    ActiveMQ 网站在这里有一些详细信息

    但他们的网站最近已重新生成,一些链接已损坏。但指针是您在代理中设置这些目的地。

    【讨论】:

    • 谢谢,我知道这是正确的做法,我正在尝试使用骆驼(没有黑客攻击)规避一些现有的项目和流程限制。感谢您的反馈;鉴于您是我所有骆驼知识的来源,我会将此作为最终答案!
    猜你喜欢
    • 2020-06-09
    • 1970-01-01
    • 2017-10-02
    • 2015-05-10
    • 1970-01-01
    • 2014-08-03
    • 2017-04-01
    • 2013-04-28
    • 2022-10-08
    相关资源
    最近更新 更多