About Me

Hi, my name is Wim Deblauwe, a software developer specialized in Java, Spring, and JVM related tooling.

I wrote Taming Thymeleaf, a book to learn more about using Thymeleaf with Spring Boot. I also have a few open-source projects: one that makes it easy to do Spring Boot error handling, another for integration of Cypress with Testcontainers and a few others.

I blog regularly here about Spring Boot, Thymeleaf,Asciidoctor and other programming related subjects.

Stay up to date with the latest content via the RSS feed, follow me on Twitter, or subscribe to the mailing list.

Recent posts

Apr 17, 2020

Spring Boot test slices with custom annotations

Spring Boot has first-class support for testing, both unit and integration testing. To keep your tests running fast, there is the concept of Test Slicing. By only loading the relevant part of the complete application in a test, the tests are focused and run faster since Spring does not need to load everything. This blog post will show how to use a custom annotation to ensure your unit/integration tests are all consistent with little effort.


Mar 10, 2020

Port of the Laravel Intermediate Task List tutorial to Spring Boot with Thymeleaf

Laravel is a very interesting PHP framework for building web applications. Their docs have a nice tutorial to build a task list to explain many of their concepts. This blog post basically mirrors that tutorial but shows how to build the same web application using Spring Boot and Thymeleaf.


Mar 3, 2020

UUID based Value Objects with Spring Boot REST API

The previous blog post showed how to use Value Objects with a REST API with Spring Boot. In that post, the value object used a long under the hood. This post shows an alternative using UUID objects instead.


Feb 26, 2020

Value Objects with Spring Boot REST API

In Using primary key objects with Spring Data and Hibernate, I explained how to use Value Objects for interaction with the database. This time, I will focus on how to do something similar at "the other end" of the application, in the REST API.


Feb 17, 2020

Using Tailwind CSS with Spring Boot and Thymeleaf

Tailwind CSS is an interesting utility-first CSS framework for rapidly building custom designs. It is perfectly possible to use this in a Java Spring MVC application that uses Thymeleaf for server-side rendering.


Feb 11, 2020

Testcontainers-cypress release 0.4.0

Testcontainers-cypress 0.4.0 is released with support for Cypress 4.0.1 which has Firefox support.


Feb 5, 2020

Welcome to the new blog

This post marks the start of the new blog at https://www.wimdeblauwe.com. The content of the old blog at https://wimdeblauwe.wordpress.com/ has all been migrated here. Do let me know if there would be an error or something missing on a page.


Feb 1, 2020

Example usage of testcontainers cypress

My project testcontainers-cypress allows to run Cypress tests from JUnit using the excellent Testcontainers project. In this blog post, I will show how to get started with the project in a very simple Spring Boot application.


Dec 20, 2019

Customization of Asciidoctor PDF output

Using Asciidoc (the markup language) with the Asciidoctor toolchain is one of our favorite ways to write documentation. We mainly use it to create API documentation from our REST API backends using Spring REST Docs. Asciidoctor supports a variety of output formats, where HTML and PDF are ones we used the most. While the default PDF output already looks very good, it is always nice to be able customize the output a bit to better align with the project the documentation is created for. This post will explain exactly how to do that.


Oct 27, 2019

Using primary key objects with Spring Data and Hibernate

Most of the tutorials or blog posts that use Spring Data JPA use auto-generated primary keys. This post shows how you can use primary key objects instead of primitives like Long or UUID.