如何在 Camel DSL Java 中检索 AWS sqs 消息属性?



我已经使用以下命令下的 Apache Camel 将消息属性与正文一起发送到 AWS sqs

to("aws-sqs://{{queue.name}}?amazonSQSClient=#sqsClient&attributeNames=#systemName")

消息发送成功。现在我想使用 Camel DSL java 检索消息属性systemName。但无法检索它。CamelAwsSqsAttributes 和CamelAwsSqsMessageAttributes在标题中都显示为空白。以下是消费者的代码

Main main = new Main();
main.bind("sqsAttributeNames", Collections.singletonList("All"));
main.bind("sqsMessageAttributeNames", Collections.singletonList("All"));
from("aws-sqs://a{{queue.name}}?" +
"amazonSQSClient=#sqsClient&attributeNames=#sqsAttributeNames&messageAttributeNames=#sqsMessageAttributeNames")
.log("We have a failed request message in queue ${headers}")

有人可以帮我吗?

配置看起来不错,除了集合应替换为逗号分隔的字符串(确保字符串之间没有空格(。

另外,请提及您想要的属性。所有内容都可能无法正常工作。

Main main = new Main();
main.bind("sqsAttributeNames", "Attr1,Attr2");
main.bind("sqsMessageAttributeNames", "Attr1,Attr2");

请遵循最新的骆驼-SQS 组件。

最新更新