gpt4 book ai didi

java - Apache Camel + RabbitMQ。端点未创建

转载 作者:行者123 更新时间:2023-12-02 06:03:51 29 4
gpt4 key购买 nike

我已经创建了项目,其中仅包含rabbitmq的路由设置。

<route>
<from uri="rabbitmq:localhost/test_out_ex?queue=test_out&amp;autoDelete=false&amp;username=admin&amp;password=admin"/>
<to uri="rabbitmq:localhost/test_in_ex?queue=test_in&amp;autoDelete=false&amp;username=admin&amp;password=admin"/>
</route>

我在 tomcat 上运行它,Camel 仅创建“from”端点,而不是“to”(我在rabbitMq Web 界面中查看它)。为什么?因为,“到”还没有得到消费者吗?

更多详细信息:

问题是消息未保存在输出消息队列中。这是正常情况,当应用程序向队列发送消息时,此时消费者还没有在线,因此它应该保存消息,直到消费者连接。

因此,我定义了简单的路由并将其部署在 tomcat 上,还部署了 Jolokia 项目来通过 Hawtio 监控我的 Camel 上下文。 Hawtio 向我展示了该路由已创建并由两个端点组成。然后我通过 RabbitMq Web 界面将消息发布到“test_out”。 Hawtio 向我展示,它到达了“test_in”队列,但在 RabbitMq Web 界面(或rabbitmqctl)中,“test_in”队列不存在,因此服务器重新启动后消息消失了。

最佳答案

我们需要过滤消息头,这在从 test_out 路由到 test_in 时可能会导致一些问题。

<route>
<from uri="rabbitmq:localhost/test_out_ex?queue=test_out&amp;autoDelete=false&amp;username=admin&amp;password=admin"/>
<removeHeader pattern="rabbitmq.*"/>
<to uri="rabbitmq:localhost/test_in_ex?queue=test_in&amp;autoDelete=false&amp;username=admin&amp;password=admin"/>
</route>

关于java - Apache Camel + RabbitMQ。端点未创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22449086/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com