JMS出站通道适配器基于java的配置

有没有办法配置JMS出站通道适配器

<int-jms:outbound-channel-adapter id="jmsOut" destination="outQueue" channel="exampleChannel"/>

通过类似的“简单”方式,但只使用基于java(注释)的配置?
如果不是,那么实现这一点的最简单方法是什么?

最佳答案 Eugene,我已经向你指出了
Spring Integration Java DSL.这正是从基于Java的配置简化Spring Integration的最佳方法.

由于这不是您的第一个类似问题,请关注该项目,该项目与Core SI简单融合:

@Bean
public IntegrationFlow jmsOutboundFlow() {
    return IntegrationFlows.from("exampleChannel")
                .handleWithAdapter(h ->
                    h.jms(this.jmsConnectionFactory).destination("outQueue"))
                .get();
}

否则它可能看起来像原始的Java&注释配置:

@Bean
@serviceActivator(inputChannel = "exampleChannel")
public MessageHandler jsmOutboundAdapter() {
   JmsTemplate template = new DynamicJmsTemplate();
   template.setConnectionFactory(this.jmsConnectionFactory);
   JmsSendingMessageHandler handler = new JmsSendingMessageHandler(template);
   handler.setDestinationName("outQueue");
   return handler;
}
点赞