Artem Bilan

Artem Bilan

Recent Blog posts by Artem Bilan

Spring Integration 5.3 Milestone 3 Available

Releases | March 11, 2020 | ...

I’m pleased to announce the third milestone for Spring Integration 5.3.

This release ships several bug fixes, a bunch of new features and improvements and will be picked up by Spring Boot 2.3 M3 in the near future.

It can be downloaded from our milestone repository:

compile "org.springframework.integration:spring-integration-core:5.3.0.M3"

The most important new features are:

  • Reactive transactions support. The ReactiveTransactionManager can now be configured for endpoints which produces reactive type for replies or just implement ReactiveMessageHandler.

  • ReactiveRequestHandlerAdvice - a MethodInterceptor for message handlers producing a Mono as a payload for reply. The BiFunction<Message<?>, Mono<?>, Publisher<?>> customized is applied for the returned Mono via Mono.transform(Function) operator to add some aspects into a produced result. Typically it is used for timeout, retry, tag options applied for the remote reactive requests, e.g. Webflux or RSocket.

  • Kotlin DSL. As we promised before, we have merged spring-integration-kotlin-dsl project into core one for general availability and for further possible improvements which are possible only with direct access to core Spring Integration classes. See org.springframework.integration.dsl.IntegrationFlowDsl.kt for more information.

Spring Integration 5.3 Milestone 2 Available

Releases | February 12, 2020 | ...

On behalf of the Spring Integration team, I’m pleased to announce the second milestone for Spring Integration 5.3.

This release ships several bug fixes, a bunch of new features and improvements and will be picked up by Spring Boot 2.3 M2 in the near future.

It can be downloaded from our milestone repository:

compile "org.springframework.integration:spring-integration-core:5.3.0.M2"

The most important new features are:

  • With the IntegrationFlowExtension implementation we now can right our own Java DSL for Spring Integration. It allows to introduce custom or composed EIP-operators. The existing IntegrationComponentSpec implementations can now be extended for additional (missed?) options. So, now any custom and reusable solutions in Java DSL can be implemented in the target project:

    public class CustomIntegrationFlowDefinition extends IntegrationFlowExtension {

    public CustomIntegrationFlowDefinition…

Spring Integration 5.3 Milestone 1 Available

Releases | January 23, 2020 | ...

Dear Spring Community,

On behalf of the Spring Integration team I’m excited to announce that with the New Year we have some news to share with you. First of all, it is an honor to have taken over the lead role for the Spring Integration project. Gary Russell is still in the team and he leads Spring AMQP and Spring for Apache Kafka projects. Secondly we have just released the first milestone for Spring Integration of version 5.3.

It can be downloaded from our milestone repository:

compile "org.springframework.integration:spring-integration-core:5.3.0.M1"

This version is going to be a foundation for the upcoming Spring Boot 2.3

Spring Integration AWS 2.3.1 & Spring Cloud Stream Kinesis Binder 2.0.1 Available

Releases | January 10, 2020 | ...

Dear Spring Community,

Today it’s my pleasure to announce patch releases of Spring Integration for Amazon Web Services extension version 2.3.1 and Spring Cloud Stream Binder for AWS Kinesis version 2.0.1.

These releases can be downloaded from Maven Central, JCenter, and our release repository:

compile "org.springframework.integration:spring-integration-aws:2.3.1.RELEASE"

If you don’t use Kinesis Binder. Or via Binder dependency:

compile "org.springframework.cloud:spring-cloud-stream-binder-kinesis:2.0.1.RELEASE"

Mostly these versions have bug fixes and some community feedback refinements…

Spring Integration AWS 2.3 GA and Spring Cloud Stream Kinesis Binder 2.0 GA Available

Releases | November 27, 2019 | ...

Dear Spring Community,

Today it’s my pleasure to announce General Availability of Spring Integration for Amazon Web Services extension version 2.3.0 and Spring Cloud Stream Binder for AWS Kinesis version 2.0.0.

These releases can be downloaded from Maven Central, JCenter, and our release repository:

compile "org.springframework.integration:spring-integration-aws:2.3.0.RELEASE"

If you don’t use Kinesis Binder. Or via Binder dependency:

compile "org.springframework.cloud:spring-cloud-stream-binder-kinesis:2.0.0.RELEASE"

Release Highlights

  • The main theme of both these releases is about an integration testing using a Local Stack framework which helped us to spot several bugs and race conditions in both libraries.

  • The spring-integration-aws provides a PutRecordsRequest (batch) support for KplMessageHandler collecting async results for UserRecords in that batch using Project Reactor Mono.fromFuture() functionality.

  • A KinesisShardEndedEvent is now emitted from the KinesisMessageDrivenChannelAdapter when the next shard request returns null with the meaning that shard is closed and no records can be added to that any more.

  • The spring-cloud-stream-binder-kinesis is based on the recently released Spring Cloud Stream version 3.0 and provides a new KinesisBinderHealthIndicator to check that all the streams involved in binding configurations are available.

Spring Integration Extensions Releases

Releases | November 06, 2019 | ...

Dear Spring Community,

Following several requests from community members, it is my pleasure to announce that some Spring Integration Extensions have made it to their new generations and up-to-date dependencies. Of course, first of all, thank you everybody contributed, even if that was just a GitHub issue or StackOverflow question!

Below are highlights for those projects. All of them are available on Maven Central, JCenter and Spring Release repositories. Since all these projects are not a part of Spring Integration BOM (and they cannot be because of different release cycles) you have to…

Spring Cloud Stream - and Spring Integration.

Engineering | October 25, 2019 | ...

If you listened to Oleg Zhurakousky's talk at Spring One Platform 2019 about Spring Cloud Stream & Functions or read his recent blog posts about Simplified Spring Cloud Stream and Functional Spring Cloud Stream, you may want to say: "Wait! What happened with Spring Integration support? What do I now do with my @ServiceActivator or IntegrationFlow? I used to deal with the Sink.input() as a channel to consume binder destination with some Spring Integration logic!" As Oleg mentions in his blog post, it is still possible with existing @EnableBinding and so on, but we are moving away from that…

Spring Integration 5.2 GA Available

Releases | October 02, 2019 | ...

Dear Spring Community,

On behalf of Spring Integration team I’m excited to announce that Spring Integration 5.2.0.RELEASE is available.

It can be downloaded from our release repository and Maven Central:

compile "org.springframework.integration:spring-integration-core:5.2.0.RELEASE"

What’s New in this generation?

  • RSocket Support - an RSocketInboundGateway and RSocketOutboundGateway are implemented for Reactive Streams support in the RSocket protocol. See spring-integration-rsocket module.

  • FluxAggregatorMessageHandler to produces window or buffer results based on the Project Reactor Flux grouping and windowing functionality.

  • RateLimiterRequestHandlerAdvice and CacheRequestHandlerAdvice are available for AOP aspects around MessageHandler.handleMessage().

  • JSR223 implementation for Kotlin Scripts has been added into spring-integration-scripting module.

  • The FTP and SFTP modules now provide an event listener for certain Apache Mina FTP/SFTP server events.

Spring Integration AWS 2.2 GA and Spring Cloud Stream Kinesis Binder 1.2 GA Available

Releases | May 13, 2019 | ...

Today it’s my pleasure to announce General Availability of Spring Integration for Amazon Web Services extension version 2.2.0 and Spring Cloud Stream Binder for AWS Kinesis version 1.2.0.

These releases can be downloaded from Maven Central, JCenter, and our release repository:

compile "org.springframework.integration:spring-integration-aws:2.2.0.RELEASE"

If you don’t use Kinesis Binder. Or via Binder dependency:

compile "org.springframework.cloud:spring-cloud-stream-binder-kinesis:1.2.0.RELEASE"

The main theme of both these releases is about new functionality to support Kinesis Client and Kinesis Producer libraries. For this purpose the spring-integration-aws is shipped with KclMessageDrivenChannelAdapter and KplMessageHandler implementations, respectively. At the moment an implementation is based on the KCL v1.x, since not all AWS dependencies we use in the spring-integration-aws provide the AWS SKD v2 implementation. Based on the Kinesis Client Library investigation, an additional CheckpointMode.periodic has been introduced to both KclMessageDrivenChannelAdapter and

Spring Integration 5.2 Milestone 2 Available

Releases | May 13, 2019 | ...

On behalf of Spring Integration team I am pleased to announce that Spring Integration 5.2.0.M2 is available.

It can be downloaded from our milestone repository:

compile "org.springframework.integration:spring-integration-core:5.2.0.M2"

Highlights

  • The RSocket channel adapters are available now for full reactive network interaction between client and server. See spring-integration-rsocket module and RSocketInboundGateway & RSocketOutboundGateway JavaDocs, respectively

  • Kotlin Jsr223 scripting support has been added into spring-integration-scripting module

  • The CacheRequestHandlerAdvice was introduced to perform caching operations on the handleRequestMessage() method in the AbstractReplyProducingMessageHandler implementations

  • The RateLimiterRequestHandlerAdvice is also available for limiting access to the handleRequestMessage() method logic

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all