Oliver Drotbohm

Oliver Drotbohm

Oliver Drotbohm has been a member of the Spring open source engineering team for 15 years. His work focused on software architecture, DDD, REST, and persistence technologies.

Recent Blog posts by Oliver Drotbohm

Spring HATEOAS 1.5.5, 2.0.5, 2.1.1 and 2.2 M1 released

Releases | July 14, 2023 | ...

I'm happy to announce the releases of Spring HATEOAS 1.5.5, 2.0.5, 2.1.1 and 2.2 M1. The releases primarily contain a few bug fixes, dependency upgrades and a fix for CVE-2023-34036 potentially and only affecting applications using Spring HATEOAS with Spring WebFlux. Make sure to consult the advisory and update to the latest versions.

The releases will be also included in the upcoming releases of Spring Boot 2.7.14, 3.0.9, 3.1.2 and 3.2 M1.

Spring Modulith 1.0 M1 released

Releases | June 23, 2023 | ...

I am happy to announce the release of Spring Modulith 1.0 M1. This is an important milestone for the project and the first step on the road to promote it from an experimental to an official Spring project. This means that we ship a couple of breaking changes

  • The group identifier is now org.springframework.modulith (previously org.springframework.experimental).
  • The Spring Boot baseline of the project is 3.1 (previously 3.0).
  • The name of the actuator endpoint exposing the application module structure is now application-modules (previously applicationmodules).
  • The previously deprecated configuration properties in the JDBC-based event registry have been removed.

Spring Modulith 0.6 released

Releases | May 02, 2023 | ...

I am excited to announce the 0.6 release of Spring Modulith. We have packaged a number of great new features, most notably:

  • GH-175 – Auto-configuration for MongoDB transactions if you use the event publication registry
  • GH-184 – The event publication registry now enables asynchronous processing and shutdown behavior.
  • GH-190@EnableScenario for using the Scenario testing API with @SpringBootTest integration tests.
  • GH-192 – Support for jMolecules architecture stereotypes in the Application Module Canvas.

Find the complete changelog here, as well as the reference documentation and Javadoc.

In other news, we have decided to promote the Spring Modulith project into a top-level, non-experimental Spring project. We are going to move to the org.springframework.modulith

Spring Modulith 0.5.1 released

Releases | March 24, 2023 | ...

I'd like to announce the availability of Spring Modulith 0.5.1. The release primarily contains an important bug fix (the spring-modulith-runtime module accidentally contained a Logback configuration file only intended for test usage) and the usual upgrade to the latest Spring Boot version. Find more information in the full changelog, as well as reference documentation.

In case you are wondering about what the project is all about, Voxxed Days Zurich have published "Spring Modulith – Spring for Architecturally Curious Developers":

Spring HATEOAS 1.5.4, 2.0.3 and 2.1 M1 released

Releases | March 23, 2023 | ...

I am excited to announce the releases of versions 1.5.4, 2.0.3 and 2.1 M1 of Spring HATEOAS. The bug fix releases primarily ship dependency upgrades, including one to the latest Spring Framework 5 and 6 releases which include fixes for a CVE. The 2.1 milestone includes a couple of new features, such as:

  • Property metadata for forms now also considers JSR-03's @Size annotation – #1920
  • Introduction of SlicedModel, a simplified version of PagedModel to navigate slices but not calculate a total – #1856

For more information, please check out the full changelogs on GitHub.

Spring Modulith 0.5 released

Releases | March 08, 2023 | ...

I am excited to announce the availability of Spring Modulith 0.5. The most relevant features the release ships are:

  • #152 – A dedicated starter to ease inclusion of actuator and observability features
  • #163 – The renamed property to trigger JDBC database initialization. (spring.modulith.events.schema-initialization.enabled -> spring.modulith.events.jdbc-schema-initialization.enabled)
  • #149 – Default to await termination of task executors unless configured not to
  • #150Scenario should run stimulus in new transaction
  • #162, #154 – The usual dependency upgrades (Spring Boot 3.0.4, jMolecules 2022.2.4)

Spring Modulith 0.4 released

Releases | February 24, 2023 | ...

Dear Spring community, I am excited to announce the release of Spring Modulith 0.4. The release ships with the following new features:

  • A new Scenario API to allow the concise definition of integration tests for application modules, specifically tailored around the idea of them integrating via asynchronously handled, transaction bound events.
  • A new starter that allows to pull in the runtime support in a concise way, primarily to ease the usage of ApplicationModuleInitializers (GH-132).
  • The event publication registry now returns uncompleted events in ascending order of their publication dates (GH-133) and provides better logging (GH-125).
  • A few tiny optimizations in our documentation generation support, especially if the UML style is for component diagrams (GH-130, GH-140, GH-141

Spring Modulith 0.3 released

Engineering | January 20, 2023 | ...

Hot on the heels of Spring Boot 3.0.2, I am excited to announce the 0.3 release of Spring Modulith. The release is packed with improvements. We have tweaked a couple of things that might require your attention and a couple of adapting changes to your code. The most notable changes are:

  • GH-114 – We renamed the ….modulith.model package to ….modulith.core. This primarily affects ApplicationModules. Please adapt your imports accordingly.

  • GH-120 – The documentation support now generates diagram files using the *.puml file extension, as suggested by PlantUML. Please adapt your imports accordingly.

  • GH-103ApplicationModuleInitializer implementations will be triggered upon application startup, in the order following the application module dependency structure (more core ones are invoked first). Also, ApplicationModules exposes a ….getComparator() to order Spring beans that way. Note, that this requires the JGraphT library to be on the classpath (automatically pulled in via the spring-modulith-runtime artifact). See the reference documentation for details.

Spring Modulith 0.2 released

Releases | December 23, 2022 | ...

I am pleased to announce the availability of Spring Modulith 0.2. The release adds the following features:

  • We introduced @ApplicationModuleListener to ease the declaration of asynchronous, transactional event listeners that run in a transaction themselves. A model that we recommend as default to integration application modules. (#80, reference documentation)
  • The application module dependency structure is now also exposed as Spring Boot actuator. This allows operating infrastructure to visualize insights it provides to operations teams to be aligned with the application module structure (HTTP traces by module etc.) (#87, reference documentation
  • The Postgres event publication registry schema now follows Postgres best practices. (#81

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