Get ahead
VMware offers training and certification to turbo-charge your progress.
Learn moreOn behalf of Spring Integration team I’m pleased to announce Release Candidates for the Spring Messaging projects. Each is based on the recently released Spring Framework 5.1 GA, has upgraded dependencies and will be part of the upcoming Spring Boot 2.1 M4 - just in time for Spring One Platform!
The artifacts for these projects are available in the Spring Milestone repository.
Please, refer to the What’s New
chapter in each Reference Manual for more information about new features and notable changers for each project mentioned below.
2.1.0.RC1 release notes.
Project Page | GitHub | JIRA | Documentation | Stack Overflow | Gitter
2.2.0.RC1 Release notes.
Project Page | GitHub | Issues | Documentation | Stack Overflow | Gitter
5.1.0.RC1 release notes.
There are several features I would like to mention here since they are not documented yet (we are going to do that during GA release):
fluxTransform()
operatorTo hand off the message processing to Reactive Streams, the Java DSL for Spring Integration introduced an intermediate fluxTransform()
, e.g.
IntegrationFlow integrationFlow = f -> f
.split()
.<String, String>fluxTransform(flux -> flux
.map(Message::getPayload
.map(String::toUpperCase))
.aggregate();
This operator accepts an argument in form of Function<? super Flux<Message<I>>, ? extends Publisher<O>>
. The Framework injects FluxMessageChannel
s before and after calling this function. The it builds a Flux
to store a request message to the subscriber context, calls Flux.transform()
with the provided function and copies headers from the request message if the result from the function is not a Message<?>
already.
Another new feature is a Reactive polling for the SourcePollingChannelAdapter
. If the output channel is an instance of FluxMessageChannel
, the Framework transform all the polling options to the Flux.generate()
based on the result of the trigger.nextExecutionTime(triggerContext)
and a combination with the Mono.delay(duration)
to achieve a polling feature reactive manner.
Also we added several other convenient operators to Java DSL, like nullChannel()
and logAndReply()
.
And finally the Java DSL has been improved for an improved Kotlin experience without breaking changes for regular Java configuration.
Project Page | GitHub | JIRA | Documentation | Stack Overflow | Gitter
3.1.0.RC1 Release notes.
Based on the above mentioned Spring for Apache Kafka 2.2.0.RC1
and Spring Integration 5.1.0.RC1
, provides some compatibility fixes (especially with Kotlin) and some minor features, like an onPartitionsAssignedSeekCallback
for the KafkaInboundGateway
and KafkaMessageDrivenChannelAdapter
.
See Spring for Apache Kafka Reference Manual for more information about this extension.
Please, try all these new bits and come back to us with any feedback via any available channel. We will appreciate the help before we are going to GAs in mid October just in time for Spring Boot 2.1 GA
!
Thank you everyone who contributed to all these project any possible way!
Right now we are heading to start an epic event in Spring and Pivotal world - Spring One Platform! Gary Russell is going to talk about Spring for Apache Kafka together with Viktor Gamov from Confluent and I will talk about Spring Cloud Stream Binder for Google Cloud Pub/Sub together with Kir Titievsky from Google Cloud Platform. Please, join us if you are here or watch video later!