我正在尝试使用Spring Boot 1.5.2.RELEASE + Camel(Spring Boot starter)2.19.2来监听ActiveMQ队列,然后将消息作为其正文发布到休息端点URL(POST方法)。实现这一目标的最佳方法是什么? 我收集了一些信息,并试图将它们联系在一起,但有点困惑。
以下是我为Camel Rest DSL收集的信息,我不太确定下面的骆驼是通过这个创建这些休息服务还是只是一个已经暴露的端点,在我的情况下它是一个已经暴露的端点
rest("/basePath")
post("/someEndpoint").to("direct:restEndpoint")
使用以上是我为ActiveMQ收集的,我不太确定是正确的
from("activemq:queue:<queue_name>").to("direct:restEndpoint")
但同样,我不太确定如何监听ActiveMQ队列以获取新消息,或者它是默认情况下Camel会做什么的?另外,我需要将消息作为帖子正文传递给我的休息端点。我也看到了一些对camel-http4和camel-http的引用,我完全糊涂了。
非常感谢任何协助。
答案 0 :(得分:2)
开始使用Camel时会出现一些混乱,但最终的解决方案将类似于:
from("activemq:queue:my-route")
.process(/* change the in/out messages if you need to */)
.to("http4://your-endpoint.com");
请勿尝试简单地复制/粘贴此代码,直到它正常工作。我的Camel经验法则是: 始终阅读组件文档并尝试在软件中使用它 。在你的情况下,我建议:
你的第一条路线需要一些时间来处理简单的事情,但你会很快开始流动。