Introduction to Transactions in Spring Cloud Stream Kafka Applications

Engineering | Soby Chacko | September 27, 2023 | ...

We are starting a new blog series that focuses on working with transactions in Spring Cloud Stream Kafka applications. This blog series covers many low-level details of writing transactional applications with Spring Cloud Stream and Apache Kafka. By the end of this blog series, we hope to give you enough information about writing transactional Spring Cloud Stream Kafka applications for various business use cases.

Basic Building Blocks

The foundational support for transactions in Spring Cloud Stream Kafka applications primarily comes from Apache Kafka itself and the Spring for Apache Kafka…

This Week in Spring - September 26th, 2023

Engineering | Josh Long | September 26, 2023 | ...

Hi, Spring fans! Welcome to another installment of This Week in Spring! How are you? It's September 26th, 2023, and I am in sunny Singapore for SpringOne at VMWare Explore Singapore. If you're around, don't forget to say hi!

It's gonna be a fun and busy week in Singapore, and then next week I'm off to Antwerp, Belgium, for the amazing Devoxx BE 2023. Then, I'm off to Morocco, for Devoxx MA 2023. Then, I'm off to Amsterdam for SpringOne Tour Amsterdam. If you're in any of these places, do not hesitate to reach out and say hi! I'd love to chat! And with that, we've got a ton of things to cover…

Simplified Event Externalization with Spring Modulith

Engineering | Oliver Drotbohm | September 22, 2023 | ...

Transactional service methods are a common pattern in Spring applications. These methods trigger a state transition important to the business. This usually involves a core domain abstraction, such as an aggregate and its corresponding repository. A stereotypical example of such an arrangement might look like this:

@Service
@RequiredArgsConstructor
class OrderManagement {

  private final OrderRepository orders;

  @Transactional
  Order complete(Order order) {
     return orders.save(order.complete());
  }
}

As state transitions like these might be interesting to third parties, we might want…

Paketo Buildpacks Bionic End Of Support

Engineering | Scott Frederick | September 22, 2023 | ...

The Spring Boot plugins for Maven and Gradle provide the ability to build Docker images using Cloud Native Buildpacks. By default, Spring Boot uses the CNB builders provided by the Paketo Buildpacks project.

What's Changed

The Paketo Buildpacks project has announced that Ubuntu 18.04 Bionic-based builders are no longer supported, in favor of Ubuntu 22.04 Jammy-based builders. See the Paketo announcement for more details on the builders that are affected by this change.

The Maven and Gradle plugins for Spring Boot versions 3.1 and earlier use the Bionic Base Builder by default when building…

Spring Cloud Dataflow 2.11.0 Released

Releases | Chris Bono | September 21, 2023 | ...

On behalf of the team and everyone who has contributed, I’m happy to announce that Spring Cloud Dataflow 2.11.0 has been released and is now available from Maven Central.

Notable Changes in 2.11.0

Spring Boot 3 Applications

  • Adds support for Spring Boot 3.x based stream applications.
  • Adds support for Spring Cloud Task 3.x based task applications.
  • Adds support for Spring Batch 5.x based batch applications.

More info can be found in the Boot 3 Appendix.

Library Updates

  • Spring Boot 2.7.15
  • Spring Cloud 2021.0.8

Kubernetes Update

  • The long-awaited update of Kubernetes cronjobs from batch/v1beta -> batch/v1 which allows users to run Kubernetes >= 1.25.0.

Spring Boot 2.7.16 available now

Releases | Moritz Halbritter | September 21, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 2.7.16 has been released and is now available from Maven Central.

This release includes 24 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Boot 3.0.11 available now

Releases | Moritz Halbritter | September 21, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.0.11 has been released and is now available from Maven Central.

This release includes 40 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Boot 3.1.4 available now

Releases | Moritz Halbritter | September 21, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.1.4 has been released and is now available from Maven Central.

This release includes 50 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Modulith 1.1 M1 and 1.0.1 released

Releases | Oliver Drotbohm | September 21, 2023 | ...

On behalf of the community, I am happy to announce the release of Spring Modulith 1.1 M1 and 1.0.1. While the latter primarily ships minor bug fixes, the former packages quite a few new features, such as:

  • Support to externalize application events into Kafka, AMQP and JMS GH-248
  • APIs to access completed and incomplete event publications GH-294
  • Support for Neo4j as persistence store to back the Event Publication Registry GH-301

We will have a blog post elaborating on the former coming soon. Feel free to check out the full change log and revamped reference documentation in the meantime. Thanks…

Spring Boot 3.2.0-M3 available now

Releases | Moritz Halbritter | September 21, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.2.0-M3 has been released and is now available from https://repo.spring.io/milestone.

This release includes 97 enhancements, documentation improvements, dependency upgrades, and bug fixes. Notable new features include:

  • Support for Jetty 12
  • Support for Spring for Apache Pulsar
  • Docker Compose Support for Neo4j

Please see the release notes for more details and upgrade instructions.

Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

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