5.1 和 5.2 之间的更改
行为变化
请参阅 迁移指南,了解此版本中的行为变化。
新组件
RSocket 支持
现在提供 spring-integration-rsocket 模块,其中包含用于 RSocket 协议支持的通道适配器实现。有关更多信息,请参阅 RSocket 支持。
速率限制通知支持
现在提供 RateLimiterRequestHandlerAdvice,用于限制处理程序的请求速率。有关更多信息,请参阅 速率限制通知。
缓存通知支持
现在提供 CacheRequestHandlerAdvice,用于缓存处理程序上的请求结果。有关更多信息,请参阅 缓存通知。
Kotlin 脚本支持
JSR223 脚本模块现在包含对 Kotlin 脚本的支持。有关更多信息,请参阅 脚本支持。
Flux 聚合器支持
现在提供 FluxAggregatorMessageHandler,用于基于 Project Reactor Flux 运算符进行消息分组和窗口逻辑。有关更多信息,请参阅 Flux 聚合器。
FTP/SFTP 事件发布器
FTP 和 SFTP 模块现在为某些 Apache Mina FTP/SFTP 服务器事件提供事件侦听器。有关更多信息,请参阅 Apache Mina FTP 服务器事件 和 Apache Mina SFTP 服务器事件。
Avro 转换器
现在提供简单的 Apache Avro 转换器。有关更多信息,请参阅 Avro 转换器。
一般变化
JsonToObjectTransformer 现在支持目标对象进行反序列化的泛型。有关更多信息,请参阅 JSON 转换器。
splitter 现在支持 discardChannel 配置选项。有关更多信息,请参阅 拆分器。
控制总线现在可以处理 Pausable(Lifecycle 的扩展)操作。有关更多信息,请参阅 控制总线。
已为聚合器组件引入 Function<MessageGroup, Map<String, Object>> 策略,用于合并和计算输出消息的标头。有关更多信息,请参阅 聚合器编程模型。
框架中抛出的所有 MessageHandlingException 现在都包含一个 bean 资源和源,用于在没有涉及最终用户代码的情况下回溯配置部分。有关更多信息,请参阅 错误处理。
为了提供更好的最终用户体验,Java DSL 现在为使用网关接口启动流提供了配置器变体。有关更多信息,请参阅 IntegrationFlows.from(Class<?> serviceInterface, Consumer<GatewayProxySpec> endpointConfigurer) JavaDocs。此外,MethodArgsHolder 现在是 GatewayProxyFactoryBean 中所有表达式的评估上下文的根对象。#args 和 #method 评估上下文变量现在已弃用。有关更多信息,请参阅 消息网关。
AMQP 变化
现在可以配置出站端点,以便如果在超时内未收到发布者确认,则合成“nack”。有关更多信息,请参阅 出站通道适配器。
入站通道适配器现在可以将批处理消息作为 List<?> 有效负载接收,而不是为每个批处理片段接收离散消息。有关更多信息,请参阅 批处理消息。
现在可以配置出站通道适配器,以阻塞调用线程,直到收到发布者确认(确认)。有关更多信息,请参阅 出站通道适配器。
文件变化
对过滤远程文件进行了一些改进。有关更多信息,请参阅 远程持久文件列表过滤器。
TCP 变化
ByteArrayLengthHeaderSerializer 使用的长度标头现在可以包含标头的长度以及有效负载的长度。有关更多信息,请参阅 消息分隔符(序列化器和反序列化器)。
使用 TcpNioServerConnectionFactory 时,现在优先接受新连接而不是从现有连接读取,但它是可配置的。有关更多信息,请参阅 关于非阻塞 I/O (NIO)。
出站网关有一个新属性 closeStreamAfterSend;当与每个请求/回复的新连接一起使用时,它会向服务器发出 EOF 信号,而无需关闭连接。这对于使用 EOF 而不是数据中的某个分隔符来表示消息结束的服务器非常有用。有关更多信息,请参阅 TCP 网关。
客户端连接工厂现在支持 connectTimeout,如果在此时间内未建立连接,则会导致抛出异常。有关更多信息,请参阅 TCP 连接工厂。
SoftEndOfStreamException 现在是 RuntimeException,而不是扩展 IOException。
邮件变化
AbstractMailReceiver 现在有一个 autoCloseFolder 选项(默认为 true),用于在获取后禁用自动关闭文件夹,而是填充 IntegrationMessageHeaderAccessor.CLOSEABLE_RESOURCE 标头以进行下游交互。有关更多信息,请参阅 邮件接收通道适配器。
HTTP 变化
HTTP 入站端点现在支持请求有效负载验证。有关更多信息,请参阅 HTTP 支持。
WebFlux 变化
WebFluxRequestExecutingMessageHandler 现在支持 Publisher、Resource 和 MultiValueMap 作为请求消息 payload。WebFluxInboundEndpoint 现在支持请求有效负载验证。有关更多信息,请参阅 WebFlux 支持。
MongoDb 变化
MongoDbMessageStore 现在可以配置自定义转换器。有关更多信息,请参阅 MongoDB 支持。
路由器变化
您现在可以禁用回退到通道键作为通道 bean 名称。有关更多信息,请参阅 动态路由器。