当前位置: 首页 > 知识库问答 >
问题:

Spring集成:事件驱动入站通道适配器

西门良才
2023-03-14

我试图将从Quickfix读取消息(读取修复消息)配置到spring集成中。我知道我可以使用入站通道适配器从外部源(如QuickFix)读取数据。您能提供如何编写事件驱动入站通道适配器的示例吗?我有以下配置不起作用

<bean id="QuickFixClient" class="com.limebrokerage.quickfix.QuickFixClient" >
<constructor-arg index="0" value= "/home/sbansal/workspace/bo/target/config/sterling.qfix" />
</bean>

<int:inbound-channel-adapter ref="QuickFixClient" method="fromApp" channel="FixChannel">
</int:inbound-channel-adapter>

共有1个答案

万明辉
2023-03-14

消息驱动的通道适配器通常扩展MessageProducerSupport,使用MessageBuilder生成消息,并调用Send(message)

或者,您可以编写一个简单的POJO,并使用返回void service-interface方法将 注入其中。

 类似资料:
  • 问题内容: 入站和出站通道适配器之间的根本区别是什么? 任何示例都将非常有帮助。 我已经查看过Spring文档,这种“方向性”的区别对我来说还不清楚。我支持配置了outbound-channel-adapter的应用程序,但是我发现使用 出站 标签可以直观地了解行为计数器。该适配器获取一个外部文件,然后 将其 引入应用程序中, 在 该应用程序中我们解析文件并保留数据。 这类似于这个问题,但是我想更

  • 如何通过注释而不是常规配置文件配置入站通道适配器?我可以为会话工厂定义bean,如下所示: 如何配置通过注释下给出的入站通道适配器? 我正在寻找的是在应用程序启动时连接所有bean,然后公开一些方法来开始轮询服务器,处理它们,然后从本地删除它们,类似于 其中getPollableChannel()为我提供了用于轮询的bean。

  • 可以在运行时向spring integration dsl注册MessageSources吗? 在我的例子中,我想创建多个FileReadingMessageSources(基于UI的输入),然后将有效负载发送到特定的通道/jms路由(从元数据或用户输入读取) 另一个问题是,是否可以动态注册IntegrationFlows?

  • 我们正在使用spring integration sftp入站通道适配器,它每隔几秒钟轮询一次,并将zip文件下载到本地目录进行进一步处理。当有一个大文件,客户端仍在上载该文件,而这个入站适配器拾取了那个不完整的文件时,问题就开始了。我们使用AcceptAllFileFilter进行远程筛选,对于本地筛选,我们有自定义筛选。 有没有更好的方法来忽略或检查文件是否完全上传,然后拿起进行处理?

  • 我有一个由入站文件适配器读取的目录,该适配器被管道输送到优先级通道,该通道按文件名称对文件进行排序。我创建了一个事务同步工厂,用于在处理完成后移动文件,它对入站适配器和其他文件编写器流中发生的所有转换/聚合都很好。一旦我添加了PriorityChannel,事务似乎就完成了,它没有被传递给转换/聚合逻辑。 根据Gary的说法,这应该是可行的(按照要求提供整个示例): 通过这样做并移除Priorit

  • 问题内容: Spring Integration FTP中的入站通道适配器和出站通道适配器之间有什么区别?我应该使用哪一个?何时使用? 我从文档中了解到,出站可以发送任何类型的文件(例如byte [],String,java.io.File),但入站仅限于文件类型。那仅仅是区别还是其他? 问题答案: 我建议您首先阅读理论 。 任何Inbound适配器都旨在从外部系统获取数据。Outbound-放置