Spring Integration 3.0候选版本1现已发布

发布 | Gary Russell | 2013年11月27日 | ...

我们非常高兴地宣布,Spring Integration 3.0.0.RC1 现已在 Spring Milestone Repo 中提供。

此版本默认使用 Spring Framework 3.2.5,但也兼容 Spring 3.1.x 和 4.0.x。

自里程碑版本 3 以来更改的发布说明 在此处提供

##首先,关于 Spring Framework 4 支持的说明

Spring Framework 4.0 有一个新的spring-messaging模块,其中包含许多来自 Spring Integration 的关键抽象。

Spring Integration 3 虽然与 Spring Framework 4 兼容,但不依赖于它,也不使用这些类,因此它也可以与 Spring Framework 3.2 和 3.1 一起使用。

我们计划在 2014 年初发布 Spring Integration 4,它将完全兼容(并**需要**)Spring Framework 4,并利用其spring-messaging模块作为基础。Spring Framework 4 发布后,很快就会提供里程碑版本。

##3.0 的新增功能

可以在 参考文档 中找到 3.0 版本的完整“新增功能”,但这里有一些亮点……

###新的和修改的端点

  • syslog 入站适配器 (UDP 和 TCP)
<int-syslog:inbound-channel-adapter id="foobar" channel="foo" port="1514" />
  • 轮询多个_MBean_/属性的 JMX 入站适配器。
<jmx:tree-polling-channel-adapter id="jmxtree"
		channel="mbeanData"
		auto-startup="false"
		query-name="java.lang:type=Runtime"
		query-expression="*:type=*">
	<si:poller max-messages-per-poll="1" fixed-rate="5000"/>
</jmx:tree-polling-channel-adapter>
  • 文件尾部监控入站适配器
<int-file:tail-inbound-channel-adapter id="tailer"
	channel="lines"
	file="/tmp/baz" />
  • 脚本入站适配器
  • 内容增强器现在可以更新标头以及有效负载
  • HTTP 入站端点现在使用 Spring MVC 3.1 RequestMapping - 单个端点现在可以支持多个路径
  • Redis Queue 入站和出站适配器
  • 网关现在支持在所有网关方法中设置公共标头(包括调用的方法
<int:gateway id="myGateway"
		service-interface="foo.Bar"
		default-request-channel="requestChannel">
	<int:default-header name="calledMethod"
                        expression="#gatewayMethod.name"/>
</int:gateway>
  • FTP/SFTP 入站适配器可以配置为保留远程时间戳
  • FTP/SFTP 网关现在支持mv(重命名)、putmput命令;lsmgetmput现在支持递归 - 允许传输目录树。
  • JPA 端点现在可以存储多个(Iterable)实体;此外,还支持flushclear操作
  • <chain/>中的元素现在可以具有id,允许它们作为 bean 和/或_MBean_提供。
  • 现在提供了一种机制,允许通过 TCP 传输选定的_MessageHeader_。
  • TCP 连接事件入站适配器 - 连接打开、关闭或发生异常时,现在会发出_ApplicationEvent_。
<int-ip:tcp-connection-event-inbound-channel-adapter channel="events" />

###常规改进

  • 标头通道注册表 - 序列化消息时,现在可以将标头通道(回复、错误)保存在注册表中,如果需要,在发送回复时将引用该注册表。这可以用来避免No output-channel or replyChannel header available _ChannelResolutionException_。
  • 可以注册SpEL函数,并使其可用于所有消息传递 SpEL 表达式
<int:spel-function id="foo"
	class="foo.MyUtils" method="evaluate(java.lang.String, java.lang.Object)"/>

<int:transformer input-channel="in" output-channel="out"
		 expression="#foo(headers.bar, payload)" />

提供两个内置函数:#jsonPath#xpath

还可以向评估上下文添加自定义_PropertyAccessor_。

  • Redis 元数据存储 - 用于存储feedtwitter适配器的状态。
  • 可配置的 MongoDB 消息存储 - 现在提供了一个更灵活的消息存储
  • 内联脚本现在可以有变量
  • 现在提供了一个持久性AcceptOnceFileListFilter,可以防止跨系统重启重复。

###结论

请参阅 项目页面,了解更多信息以及下载、文档等链接。

我们将很快发布,因此我们希望用户能够试用此候选版本。

迁移指南中详细介绍了一些迁移注意事项 迁移指南

谢谢。

获取Spring通讯

通过Spring通讯保持联系

订阅

领先一步

VMware 提供培训和认证,以加快您的进度。

了解更多

获取支持

Tanzu Spring在一个简单的订阅中提供对OpenJDK™、Spring和Apache Tomcat®的支持和二进制文件。

了解更多

即将举行的活动

查看Spring社区中所有即将举行的活动。

查看全部