6.0 和 6.1 之间的变化

新组件

Zip 支持

Zip Spring Integration 扩展项目已作为 spring-integration-zip 模块迁移。 有关更多信息,请参阅 Zip 支持

ContextHolderRequestHandlerAdvice

ContextHolderRequestHandlerAdvice 允许在 MessageHandler 执行期间将请求消息中的值存储到某个上下文中。 有关更多信息,请参阅 上下文持有者通知

Java DSL 的 handleReactive() 操作符

IntegrationFlow 现在可以使用方便的 handleReactive(ReactiveMessageHandler) 操作符结束。 有关更多信息,请参阅 ReactiveMessageHandler

PartitionedChannel

引入了一个新的 PartitionedChannel,用于在同一线程中处理具有相同分区键的消息。 有关更多信息,请参阅 PartitionedChannel

一般性更改

  • 增加了对 Protocol Buffers 转换的支持。 有关更多信息,请参阅 Protocol Buffers 转换器

  • 当消息被静默丢弃时,MessageFilter 现在会在日志中发出警告。 有关更多信息,请参阅 过滤器

  • 网关和回复通道适配器中发送和接收操作的默认超时已从无限期更改为 30 秒。 只有一个保留为 1 秒,它是 PollingConsumerreceiveTimeout,以避免阻塞调度程序线程过长时间,并允许其他排队任务由 TaskScheduler 执行。

  • IntegrationComponentSpec.get() 方法已被弃用,并计划在下一个版本中删除。 由于 IntegrationComponentSpec 是一个 FactoryBean,它的 bean 定义必须保持不变,不进行任何目标对象解析。 Java DSL 和框架本身将管理 IntegrationComponentSpec 的生命周期。 有关更多信息,请参阅 Java DSL

  • 如果 AbstractMessageProducingHandler 的输出通道配置为 ReactiveStreamsSubscribableChannel,则默认将其标记为 async。 有关更多信息,请参阅 异步服务激活器

Web Sockets 更改

ClientWebSocketContainer 现在可以使用预定义的 URI 进行配置,而不是 uriTemplateuriVariables 的组合。 有关更多信息,请参阅 WebSocket 概述

JMS 更改

JmsInboundGateway 通过其 ChannelPublishingJmsMessageListener,现在可以配置 replyToExpression 以在运行时根据请求消息解析回复目标。 有关更多信息,请参阅 JMS 入站网关

邮件更改

(先前已弃用的)ImapIdleChannelAdapter.sendingTaskExecutor 属性已被删除,取而代之的是流中下游的异步消息处理。 有关更多信息,请参阅 邮件接收通道适配器

文件更改

FileReadingMessageSource 现在为 WatchService 公开了 watchMaxDepthwatchDirPredicate 选项。 有关更多信息,请参阅 WatchServiceDirectoryScanner

AMQP 更改

Rabbit Streams 的 Java DSL API (RabbitStream 工厂) 暴露了更多用于简单配置的属性。 有关更多信息,请参阅 RabbitMQ Stream 队列支持

JDBC 更改

DefaultLockRepository 现在暴露了 insertupdaterenew 查询的 setter。 有关更多信息,请参阅 JDBC 锁注册表