如何在我的项目中动态创建入站适配器
以轮询和检索服务器中的文件?
如果允许您在项目中使用第三方库的非“通用可用性”(GA)版本(例如,版本候选(RC)或里程碑(M),那么您可以使用Spring Integration的版本5.0.0.m2
。这是最新出版的版本,截至2009年3月'17。
从5.0
开始,Spring Integration包含Java DSL运行时流注册特性。它允许您像在标准bean中那样定义集成流(包括入站适配器),但它可以在任何运行时时刻完成。
您只需使用以下三个步骤:
@Autowired
public MyClass(IntegrationFlowContext flowContext) {
this.flowContext = flowContext;
}
IntegrationFlowRegistration registration = flowContext
.registration(IntegrationFlows // this method accepts IntegrationFlow instance
.from(s -> s.ftp(ftpSessionFactory())
.localFilter(localFileFilter())
//other actions
.get()) // standard end of DSL flow building process
.autoStartup(true) // not required but can be useful
.register(); // this makes the flow exist in the context
// retrieve registration ID from the object created above
String dynamicFlowRegistrationId = registration.getId();
// the following will also gracefully stop all the processes within the flow
flowContext.remove(dynamicFlowRegistrationId);
我有一个Web服务,每个版本将有多个版本和多个类。我想在启动时动态创建服务激活器,这样我就可以减少配置量,从而更容易维护。开发人员可以放入一个新类,SI会自动拾取它。 我编码了一个Application Listener: 稍后在路由器中,我有以下代码: 但当路由器尝试路由时,我会出现以下错误: 我该怎么做?我需要动态创建服务激活器,并在以后将消息路由到这些激活器。 没有办法在ServiceAct
当我向主题“Test19”发送任何消息时,配置的ServiceActivator“ProcessMessage”方法将两条消息显示为配置的两个客户,但这里的问题是,在添加到消费者上下文之前,我需要为每个客户加载入站配置文件…否则,我只能在控制台中得到一条消息…是正确的方式还是我需要在这里改变什么? 谢了。
目前在我们的项目中,我们正在使用spring框架。由于一些项目需求,我们计划在我们的项目中实现Spring集成框架。 我打算抛出Spring集成示例(Spring集成Rest HTTP路径使用演示)应用程序 下面是应用程序Context-http-int.xml文件 根据我的理解,流程就像当输入通道中有消息时,员工搜索服务将被激活。但是根据我们的项目要求,我们需要在运行时根据一些头值激活服务,比如
我正在使用Spring集成文件/sftp模块,如何避免下载部分文件?我无法控制将文件推送到ftp/sftp的外部进程。
我发现了一个xml配置的入站适配器示例,但我并不完全理解。配置指定REST请求设置请求方法、使用的格式等。 我认为,从Spring集成的角度来看,响应应该更加重要,因为响应实际上是为消息通道提供信息的。我说得对吗? HTTP入站适配器用作消息endpoint(实际上是消息起始点),它调用HTTP请求,例如REST服务的URL。”http://myRest/transfer/next“-向SI消息通
这里排着队 但我用 使用请求/响应体系结构。它确实工作得很好,因为它提供了动态路由,手动创建tcp客户端。