首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可以使用RabbitMessagingTemplate作为AmqpOutboundEndpoint吗?

可以使用RabbitMessagingTemplate作为AmqpOutboundEndpoint吗?
EN

Stack Overflow用户
提问于 2015-04-23 16:06:42
回答 1查看 950关注 0票数 1

我对spring-integration非常陌生。我正在尝试集成一个IntegrationFlow,哪个端点是AmqpOutboundEndpoint

代码语言:javascript
运行
复制
return IntegrationFlows.from("ordersChannel")
            .handle(Amqp.outboundAdapter(rabbitTemplate)
                    .exchangeName(exchangeName)
                    .routingKey(routingKey))
            .get();

我的MessageGateway用我想要的有效负载创建org.springframework.messaging.support.GenericMessage类型的实例:

代码语言:javascript
运行
复制
@MessagingGateway
public interface OrderDispatchService {


    @Gateway(requestChannel = "ordersChannel")
    void sendOrder(final Order order);
}

我确实希望outboundEndpoint能够像RabbitMessagingTemplate一样创建amqp消息。一条看org.springframework.messaging.support.GenericMessage的amqp消息。但是AmqpOutboundEndpoint只是以一个AmqpTemplate作为参数。我怎样才能做到这一点?任何转换原始消息的尝试都会失败,因为端点只是打开消息并只获取原始有效负载。也许我偏离轨道了?

更新:

我现在做了以下工作:

代码语言:javascript
运行
复制
.enrichHeaders(s -> s.headerExpressions(h -> h
                    .put(AmqpHeaders.MESSAGE_ID, "headers.id.toString()")
                    .put(AmqpHeaders.TIMESTAMP, "new java.util.Date(headers.timestamp)")))

这会将原始org.springframework.messaging.support.GenericMessage头的值复制到等效的amqp头中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-23 16:57:15

不清楚您的意思是什么;RabbitMessagingTemplate执行与AmqpOutboundEndpoint类似的函数--将o.s.messaging.Message转换为RabbitMQ消息。

两人都在封面下使用RabbitTemplate

RabbitMessagingTemplate针对的是使用Spring消息的人,而不是使用Spring的人。

如果你能确切地解释你的问题是什么,我们可以进一步帮助你。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29828869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档