2017-06-20 69 views
0

我已经配置等Spring集成 - 之间传递数据流

@Bean 
public IntegrationFlow setupRabbitFlow() { 
    return IntegrationFlows.from(myInputChannel)  
      .handle((p, h) -> rabbitPublisher.publishToRabbit(p, h)) 
      .get(); 
} 

和从一些XML文件处理传入数据的某些其它流,例如一个特殊的IntegrationFlow如Polling from file using Java DSL - compile error when adding Files.inboundAdapter所示。到那个流程结束时,我想把消息传递给上述的兔子发送“接收器”。我该如何申报?

+0

只是一个quickie:如果未定义限定符,则方法名称将成为bean名称。您可能不希望名称为“setupRabbitFlow”的Spring组件。 –

+0

我认为他对'IntegrationFlow' bean的逻辑名称很好:https://github.com/spring-projects/spring-integration-java-dsl/wiki/Spring-Integration-Java-DSL-Reference –

回答

1

Spring Integration的头等公民之一是MessageChannel抽象。

Spring集成组件(端点)之间的任何交互实际上都是通过消息通道完成的。

您在第二个流程中需要的是在该流程末尾指定.channel(myInputChannel)。 XML处理的结果将发送给您的第一个流程。