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
秒。唯一保留的是PollingConsumer
的receiveTimeout
为1
秒,以避免调度线程阻塞过长时间,并让其他排队的任务能够在TaskScheduler
中执行。 -
IntegrationComponentSpec.get()
方法已被弃用,计划在下一个版本中移除。由于IntegrationComponentSpec
是一个FactoryBean
,其 bean 定义必须保持不变,不能有任何目标对象解析。Java DSL 和框架本身将管理IntegrationComponentSpec
的生命周期。更多信息请参见 Java DSL。 -
如果
AbstractMessageProducingHandler
的输出通道配置为ReactiveStreamsSubscribableChannel
,则默认情况下它会被标记为async
。更多信息请参见 异步服务激活器。
Web Sockets 变更
现在可以使用预定义的 URI
而不是 uriTemplate
和 uriVariables
的组合来配置 ClientWebSocketContainer
。更多信息,请参阅 WebSocket 概述。
JMS 更改
JmsInboundGateway
通过其 ChannelPublishingJmsMessageListener
,现在可以配置 replyToExpression
以在运行时针对请求消息解析回复目的地。更多信息,请参见 JMS 入站网关。
邮件更改
已移除 (先前已弃用的) ImapIdleChannelAdapter.sendingTaskExecutor
属性,现在改用流程中的异步消息处理下游。有关更多信息,请参阅 邮件接收通道适配器。
文件更改
FileReadingMessageSource
现在为 WatchService
暴露了 watchMaxDepth
和 watchDirPredicate
选项。更多信息请参见 WatchServiceDirectoryScanner。
AMQP 更改
Rabbit Streams 的 Java DSL API(RabbitStream
工厂)公开了额外的属性以进行简单的配置。有关更多信息,请参阅 RabbitMQ Stream 队列支持。
JDBC 更改
DefaultLockRepository
现在暴露了 insert
、update
和 renew
查询的 setter 方法。更多信息请参见 JDBC 锁注册表。