Blog:

Spring boot, angular and JWT authentication

In preparation for a potential customer project, I had to refresh my knowledge of Angular. The best way to do that is to create a small demo application. I used Angular 15 with Spring Boot 3 and JWT to secure the REST API. Often an authorization server like Keycloak is used for authorization and token generation. However, I tried to keep the example as simple as possible and generate the JWT as part of the application.

In preparation for a potential customer project, I had to refresh my knowledge of Angular. The best way to do that is to create a small demo .....

19.01.2023

Connect App Engine to Cloud SQL

How to connect from an application running on Google Cloud App Engine to a PostgreSQL database running in Cloud SQL.

How to connect from an application running on Google Cloud App Engine to a PostgreSQL database running in Cloud SQL......

11.07.2022

Deploy to Google Cloud App Engine with GitHub Actions

In my previous post, I was explaining how to deploy to Google Cloud. The final missing part was to deploy it automatically with GitHub actions.
The authentication will be done with Workload Identity Federation.

In my previous post, I was explaining how to deploy to Google Cloud. The final missing part was to deploy it automatically with GitHub actions. The .....

08.07.2022

Deploy Vaadin App to Google Cloud App Engine with Java 17

Today I tried to deploy a Vaadin application to Google Cloud App Engine
It was not as straightforward as expected so I want to share my findings.

Today I tried to deploy a Vaadin application to Google Cloud App Engine It was not as straightforward as expected so I want to share my findings......

04.07.2022

How to use jOOQ with Testcontainers and, Flyway

When using a database the question is how to manage the versions of the schema and how to use the database in testing. Container technologies became a defacto standard. Why not use containers for development and your database?

When using a database the question is how to manage the versions of the schema and how to use the database in testing. Container technologies became a.....

29.04.2022

Visualize Message Flow with Vaadin & Neo4j

Analyzing and visualizing the message flow between business functions was the goal of my current project. At first, we considered using a UML tool for this job, but we came to the conclusion that it might not be as flexible as we need it to be. Finally, I’ve got the assignment to create a custom web application.

Analyzing and visualizing the message flow between business functions was the goal of my current project. At first, we considered using a UML tool for.....

16.03.2022

Build Interactive Data Apps with Vaadin & jOOQ (Java)

Have you ever had to write an application that didn’t do much other than display and change data? And did you use a Single Page Application framework like Angular, a REST API, and Hibernate?

Have you ever had to write an application that didn’t do much other than display and change data? And did you use a Single Page Application .....

09.03.2022

Java 16 Records with JPA and jOOQ

The new Java version 16 includes a new feature: Records

The new Java version 16 includes a new feature: Records.....

20.04.2021

Vaadin Lazy Loading Techniques

When using grids, trees, or any other of the multi-valued component with Vaadin you often want to display data from a database table, and typically you have more than a few rows in the database.
In this case loading, thousands or even millions of records don’t make sense and would be a huge performance problem.

When using grids, trees, or any other of the multi-valued component with Vaadin you often want to display data from a database table, and typically .....

15.06.2020

Type Safe SQL in Java with jOOQ

No matter if you are using frameworks like JPA, MyBatis or Spring Data JDBC you always end up declaring the SQL statements as a Java String.

No matter if you are using frameworks like JPA, MyBatis or Spring Data JDBC you always end up declaring the SQL statements as a Java String......

28.06.2019