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

Nov 23, 2021

Taming Thymeleaf 2.0 release

My book Taming Thymeleaf has been updated for Java 17, Spring Boot 2.6 and Tailwind CSS 3.0. This update is free for all Leanpub readers.

Read More...

Nov 23, 2021

Using Server-Sent Events with Thymeleaf and HTMX

This blog post uses htmx 1.6. In htmx 1.7, server-sent events support has been moved to an extension. The example code on GitHub has been updated to work with htmx 1.7. See commit b46b15b for the (small) changes that are needed. It is possible to push information from a Spring Boot backend to the UI using either Websockets or Server-Sent Events. This blog post will show how to use Thymeleaf with HTMX to push information from the server to the UI with Server-Sent Events.

Read More...

Nov 18, 2021

Using Spring Boot ObjectMapper with hibernate-types

The hibernate-types library has extra types that are not found in Hibernate by default. One of the most interesting aspects of the library is the support for JSON types. Unfortunately, by default, the library will not pick up any Jackson configuration or custom serializers defined in your Spring Boot project. This blog post will show how to configure things so the JSON related configuration of Spring Boot is used.

Read More...

Oct 4, 2021

TodoMVC with Thymeleaf and HTMX

In TodoMVC with Spring Boot and Thymeleaf, we implemented a TodoMVC clone using Spring MVC and Thymeleaf. In such a setup, each action triggers a page refresh. While this works just fine, you might want to give a more Single Page Application (SPA) spice to the experience and avoid page refreshes. This blog post will show how to use HTMX to accomplish this.

Read More...

Sep 27, 2021

TodoMVC with Spring Boot and Thymeleaf (Part 3)

In Part 2, we implemented completion and deletion of todo items. In this last part of the 3-part series, we’ll finish the implementation of our TodoMVC clone.

Read More...

Sep 23, 2021

TodoMVC with Spring Boot and Thymeleaf (Part 2)

In Part 1, we implemented TodoMVC using Spring Boot and Thymeleaf. The application already allows to add todo items and show them. We will continue in this part with completing items and deleting them.

Read More...

Sep 20, 2021

TodoMVC with Spring Boot and Thymeleaf (Part 1)

The TodoMVC project has implementations of a simple todo list application for many different frontend frameworks. The goal is that a Single Page Application is implemented in a varity of technologies to be able to compare them. I wanted to stretch the concept a bit and create a Spring Boot backend with Thymeleaf server-side rendered HTML page just to see how that could work and how it would affect the user experience.

Read More...

Sep 15, 2021

Thymeleaf iteration and fragments

Iteration in Thymeleaf templates is done using th:each. But combining it with fragments can yield some surprising results. This blog post shows an overview of what can happen and common pitfalls to watch out for.

Read More...

Jul 25, 2021

Using Java 16 records with Thymeleaf

Since Java 16, we can use records. This blog post shows how Thymeleaf supports this.

Read More...

May 23, 2021

Form handling with Thymeleaf

This post explains in detail how you should implement a HTML form with Thymeleaf and Spring Boot.

Read More...