This Week in Spring - March 17th, 2020

Engineering | Josh Long | March 17, 2020 | ...

Hi, Spring fans! Welcome to yet another installment of This Week in Spring! We're already midway through March 2020, and I can't believe how crazy things have gotten! You're no doubt experiencing something equally as odd too. The pandemic has truly changed this world in a way nothing else has in recent memory. It's crazy to think about the course this virus has taken and the journey we've all taken along with it.

I live in San Francisco, and we're currently under lockdown. It's technically a crime now to leave your home for anything but essential needs like food, medicine, or walking the dog. That's OK. That just leaves more time for us to learn and socialize, albeit online and from the confines of our own homes. We're very lucky, you know? How wild. Most of us who work on software should be able to work from home. There are some glaring exceptions, of course, as detailed in this epic megathread

Getting Started With RSocket: Spring Boot Fire-And-Forget

Engineering | Ben Wilcock | March 16, 2020 | ...

Time: about 15 minutes.

Some developers reading this post will have been using HTTP for many years by now. Most of them will also know that if you want to use HTTP with other messaging models — like fire-and-forget, for example — you must sometimes use clever workarounds like this one posted on Stackoverflow. That's because HTTP is a request-response protocol. It requires a request to be sent and a response to be received. It has no concept of a one-way message without any form of response.

RSocket takes a different approach. RSocket defines a new protocol layer on top of transports like TCP…

Spring Boot 2.3.0.M3 available now

Releases | Andy Wilkinson | March 12, 2020 | ...

On behalf of the team and everyone that contributed, I am pleased to announce that the third milestone of Spring Boot 2.3 has been released and is available from our milestone repository.

This release closes 89 issues and pull requests. Thanks to all those who have contributed.

Highlights of this milestone include:

  • Support for gracefully shutting down the embedded web server
  • Support for customizing the layers when building a layered jar with Maven
  • Support for R2DBC
  • Auto-configuration for Spring Integration's RSocket support
  • Numerous dependency upgrades

For a complete list of changes and upgrade instructions, please see the Spring Boot 2.3 Release Notes on the wiki and the updated reference documentation

Spring Integration 5.3 Milestone 3 Available

Releases | Artem Bilan | 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 Data Neumann M4 released

Releases | Jens Schauder | March 11, 2020 | ...

On behalf of the community, I'd like to announce the availability of the Spring Data Neumann M4 milestone release. It is planned to be the last milestone before the first release candidate.

Neumann M4 ships with 69 tickets fixed. It is built on top of Spring Framework 5.2.4 and will be picked up by Spring Boot 2.3.0 M3 for your convenience.

Finally, here are links to the reference documentation, changelogs, and artifacts of the individual project releases:

Spring Cloud Data Flow 2.4.2 GA Released

Spring Cloud Data Flow team is pleased to announce the GA release of 2.4.2.

In this release, along with some bug fixes, we primarily focused on the server/client-side performance improvements on the stream management.

The REST layer in Spring Cloud Data Flow server is refactored to accommodate better pagination and performance when retrieving the runtime application statuses of streams. In addition to that, the SCDF dashboard pages are re-worked based on these changes. The Runtime Applications page in the Dashboard has a new layout where the runtime applications are grouped by their streams. The Streams page is also refactored to efficiently retrieve the stream status, application…

Spring Tips: Java 14 (or: Can Your Java Do This?)

Engineering | Josh Long | March 11, 2020 | ...

Hi, Spring fans! Welcome to another installment of Spring Tips! In this installment, we're going to look at the new features in Java 14 and their use in building Spring Boot-based applications.

Speaker: Josh Long (@starbuxman)

To get started, we need to use the latest and greatest version of Java, Java 14, which isn't - just yet - released yet. It is due to be shipped in early 2020. You can download early access releases on You might also consider using SDKManager (sdk), which makes installing new JVM editions a trivial matter indeed.

Remember, there are new Java releases every 6 months. These new releases are usable in production but are only supported for the six months between one release and the next. Every now and then, the Java project also releases a long-term support (LTS) release. That release is currently Java 11. Java 14 is only a viable target for production until Java 15 comes out. And indeed, we're going to look at a lot of preview features

This Week in Spring - March 10th, 2020

Engineering | Josh Long | March 10, 2020 | ...

Hi, Spring fans! Welcome to another rip-roaring installment of This Week in Spring! My family and I are basically self-quarantined for the meanwhile, trying to avoid the terrifying COVID-19 pandemic that's ravaging communities around the world. This pandemic is bad because it's leaving countless thousands of sick or dead. It also means that it's harder for me to get on planes to meet people.

I'm disappointed I won't be able to - and haven't been able to - make these shows. But, there's always something to be learned and this week is no different. It was a busy week in Spring indeed! Let's get…

Spring Boot for Apache Geode & Pivotal GemFire 1.1.6.RELEASE & 1.2.5.RELEASE available!

Releases | John Blum | March 09, 2020 | ...

On behalf of the Spring, Apache Geode and Pivotal GemFire communities, it is my pleasure to announce the release of Spring Boot for Apache Geode & Pivotal GemFire (SBDG) 1.1.6.RELEASE and 1.2.5.RELEASE.

SBDG 1.1.6.RELEASE builds on Spring Boot 2.1.13.RELEASE, which is based on Spring Framework 5.1.14.RELEASE, Spring Data Lovelace-SR16, Spring Session Bean-SR9 with SSDG 2.1.9.RELEASE, Apache Geode 1.6.0 and Pivotal GemFire 9.5.4. Bits are available in Maven Central. See changelog for more details.

SBDG 1.2.5.RELEASE builds on Spring Boot 2.2.5.RELEASE, which is based on Spring Framework 5.2.4.RELEASE, Spring Data Moore-SR5, Spring Session Corn-SR1 with SSDG 2.2.3.RELEASE, Apache Geode 1.9.2 and Pivotal GemFire 9.8.6. Bits are available in Maven Central. See changelog

Get the Spring newsletter

Thank you!

Get ahead

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

Learn more

Get support

Spring Runtime 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