领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我谨代表 Spring Integration 团队宣布 Spring Integration 5.0 版本 (5.0.0.RC1
) 的发布候选版本 1 现已发布。
可以从 里程碑存储库 下载
repositories {
maven { url 'http://repo.spring.io/libs-milestone' }
}
compile "org.springframework.integration:spring-integration-core:5.0.0.RC1"
20 个 JIRA(以及一些 GitHub 问题)包含在此版本中,以及错误修复和许多新功能。自之前宣布的 里程碑 7 以来,RC1
中的一些功能亮点
Java DSL 解析器填充的组件现在注册为应用程序上下文中的 BeanDefinitions
,这要归功于 Spring Framework 5.0
中新引入的基于 Supplier
的编程 bean 注册。这种方法有助于我们避免一些用于单例注册和初始化的样板代码。此外,这种 BeanDefinition
注册在某些用例中可能很有用,可以选择应用程序上下文中的特定组件。事实上,Spring Cloud Function 项目中的 java.util.function.*
bean 扫描就使用了它。
IntegrationFlows.from(Class<?> serviceInterface)
现在有一个重载版本,带有一个额外的 beanName
参数。这成为生成网关代理的 bean 名称,覆盖 [flowId].gateway
值
@Bean public IntegrationFlow uppercaseFlow() { return IntegrationFlows.from(MessageFunction.class, "uppercase") .<String, String>transform(String::toUpperCase) .get(); }
当我们通过其 bean 名称将该函数公开为微服务的入口点时,这在上述 Spring Cloud Function 中再次有用。当我们通过 IntegrationFlowContext
手动注册集成流时,这也方便,因为我们为 IntegrationFlow
提供了“丑陋”的生成 bean 名称。
HTTP 入站端点(包括 WebFlux)现在可以正确处理回复消息中的 ResponseEntity
@Bean public WebFluxInboundEndpoint errorInboundEndpoint() { WebFluxInboundEndpoint endpoint = new WebFluxInboundEndpoint(); RequestMapping requestMapping = new RequestMapping(); requestMapping.setPathPatterns("/error"); endpoint.setRequestMapping(requestMapping); endpoint.setRequestChannelName("errorServiceChannel"); return endpoint; }
@ServiceActivator(inputChannel = "errorServiceChannel") public ResponseEntity
这样,我们就使 Spring Integration Channel Adapters for Web 与 Spring MVC 和 Spring WebFlux 中的现有行为保持一致。
除了升级到最新的 Spring Web Services 3.0
和 Smack 4.2.1
之外,我们还修复了 Spring Integration Web Services 网关中对 DOM POX 消息的处理。
当一些 Leader Initiators 无法获取共享资源的锁时,它们现在可能会发出 OnFailedToAcquireMutexEvents
。这种情况经常发生,因此请查看 LockRegistryLeaderInitiator#setPublishFailedEvents()
以获取更多信息。
现在可以为 JdbcChannelMessageStore
提供自定义的 MessageGroupPreparedStatementSetter
,以用于一些非标准的消息存储结构或与默认 Java 序列化行为不同的行为。
引入了 ClientStompEncoder
,以便在使用客户端的 StompSubProtocolHandler
时正确填充 SEND
STOMP 帧。
特别感谢几位社区成员对框架的持续积极贡献;扫描 提交 并给予他们一些赞赏!
有关 5.0
中更改的完整列表,另请参阅参考手册中的 新增功能 一章。
我们预计将在几周内发布 GA 版本 - 正好赶上 Spring Boot 2.0 GA
!
重要提示
我以及 Spring 团队的大部分同事将在 Spring One Platform 上发言,讨论 Spring Integration 中的这些新功能。所以现在就注册吧!
欢迎通过适当的沟通渠道提供任何反馈、功能想法、批评、错误报告和问题