5.1 和 5.2 之间的更改
行为更改
请参阅迁移指南,了解此版本中的行为更改。
新组件
RSocket 支持
该模块现在可用于 RSocket 协议支持的通道适配器实现。
有关更多信息,请参阅 RSocket 支持。spring-integration-rsocket
Rate Limit Advice 支持
现在可用于限制处理程序的请求速率。
有关更多信息,请参阅 Rate Limiter Advice 。RateLimiterRequestHandlerAdvice
Caching Advice 支持
现在,可用于在处理程序上缓存请求结果。
有关更多信息,请参见 Caching Advice 。CacheRequestHandlerAdvice
Kotlin 脚本支持
JSR223 脚本模块现在包含对 Kotlin 脚本的支持。 有关更多信息,请参阅脚本支持。
Flux 聚合器支持
现在,可用于基于 Project Reactor 运算符的分组和窗口化消息逻辑。
有关更多信息,请参阅 Flux Aggregator。FluxAggregatorMessageHandler
Flux
FTP/SFTP 事件发布者
FTP 和 SFTP 模块现在为某些 Apache Mina FTP/SFTP 服务器事件提供事件侦听器。 有关更多信息,请参阅 Apache Mina FTP 服务器事件 和 Apache Mina SFTP 服务器事件 。
Avro 转换器
现在提供了简单的 Apache Avro 转换器。 有关更多信息,请参阅 Avro Transformers。
一般更改
现在支持目标对象要反序列化为的泛型。
有关更多信息,请参阅 JSON 转换器。JsonToObjectTransformer
现在支持配置选项。
有关更多信息,请参阅 Splitter 。splitter
discardChannel
Control Bus 现在可以处理 (扩展 ) 操作。
请参阅 Control Bus 了解更多信息。Pausable
Lifecycle
已为聚合器组件引入了该策略,以合并和计算输出消息的标头。
有关更多信息,请参阅 Aggregator Programming Model 。Function<MessageGroup, Map<String, Object>>
框架中抛出的所有 s 现在都包括一个 bean 资源和源,用于在不涉及最终用户代码的情况下回溯配置部分。
有关更多信息,请参阅错误处理。MessageHandlingException
为了获得更好的最终用户体验,Java DSL 现在提供了一个 configurer 变体,用于使用网关接口启动流。
有关更多信息,请参阅 JavaDocs。
此外,a 现在是 .
和 evaluation 上下文变量现已弃用。
有关更多信息,请参阅 Messaging Gateway。IntegrationFlows.from(Class<?> serviceInterface, Consumer<GatewayProxySpec> endpointConfigurer)
MethodArgsHolder
GatewayProxyFactoryBean
#args
#method
AMQP 更改
现在可以将出站终端节点配置为在超时内未收到发布者确认时合成 “nack”。 有关更多信息,请参阅 Outbound Channel Adapter 。
入站通道适配器现在可以接收作为有效负载的批处理消息,而不是接收每个批处理片段的离散消息。
有关更多信息,请参阅 Batched Messages 。List<?>
现在可以将出站通道适配器配置为阻塞调用线程,直到收到发布者确认(确认)。 有关更多信息,请参阅 Outbound Channel Adapter 。
文件更改
对筛选远程文件进行了一些改进。 有关更多信息,请参阅 Remote Persistent File List Filters 。
TCP 更改
现在,除了有效负载之外,还可以使用 length 标头的长度。
有关更多信息,请参见Message Demarcation (Serializers and Deserializers)。ByteArrayLengthHeaderSerializer
使用 时,现在优先接受新连接而不是从现有连接中读取,但它是可配置的。
有关更多信息,请参阅关于非阻塞 I/O (NIO)。TcpNioServerConnectionFactory
出站网关具有新属性 ;当与每个请求/回复的新连接一起使用时,它会向服务器发出 EOF 信号,而不会关闭连接。
这对于使用 EOF 来表示消息结束而不是数据中的某个分隔符的服务器非常有用。
有关更多信息,请参阅 TCP 网关。closeStreamAfterSend
客户端连接工厂现在支持如果在该时间内未建立连接,则会导致引发异常。
有关更多信息,请参阅 TCP 连接工厂。connectTimeout
SoftEndOfStreamException
现在是 a 而不是扩展 。RuntimeException
IOException
邮件更改
现在有一个选项(默认情况下),用于在获取后禁用自动关闭文件夹,但改为填充标头以进行下游交互。
有关更多信息,请参阅 Mail-receiving Channel Adapter 。AbstractMailReceiver
autoCloseFolder
true
IntegrationMessageHeaderAccessor.CLOSEABLE_RESOURCE
HTTP 更改
HTTP 入站终端节点现在支持请求负载验证。 有关更多信息,请参阅 HTTP 支持。
WebFlux 更改
现在支持 , 和 作为请求消息 。
现在支持请求有效负载验证。
有关更多信息,请参阅 WebFlux 支持。WebFluxRequestExecutingMessageHandler
Publisher
Resource
MultiValueMap
payload
WebFluxInboundEndpoint
MongoDb 更改
现在可以使用自定义转换器进行配置。
有关更多信息,请参阅 MongoDB 支持。MongoDbMessageStore
路由器更改
现在,您可以禁用回退到通道键作为通道 bean 名称的功能。 有关详细信息,请参阅 动态路由器 。
FTP/SFTP 更改
现在,它与 及其 解耦。RotatingServerAdvice
RotationPolicy
StandardRotationPolicy
远程文件信息,包括 host/port 和 directory 现在包含在 和 implementations.
此外,此信息包含在 implementation的 read operations 结果的 headers 中。
FTP 出站终端节点现在支持更改对上传文件的权限。
(SFTP 从 4.3 版开始就已经支持它)。
有关更多信息,请参阅 FTP(S) 支持 和 SFTP 支持。AbstractInboundFileSynchronizingMessageSource
AbstractRemoteFileStreamingMessageSource
AbstractRemoteFileOutboundGateway
chmod