adesso Blog
28.08.2024 By Jannis Kaiser
Bringing error messages safely to the frontend with Spring-Boot
Seit Spring Boot 2.3 werden detaillierte Fehlermeldungen aus Sicherheitsgründen standardmäßig unterdrückt. Das Frontend benötigt aber oft spezifische Fehlerdetails, um eine gute User Experience zu gewährleisten. In diesem Blogbeitrag zeige ich, wie du in Spring Boot Fehlerdetails sicher und gezielt an das Frontend weitergeben kannst - ohne die Sicherheit deines Projekts zu gefährden. In meinem Blog-Beitrag erfahrt ihr, wie ihr mit @ControllerAdvice, ErrorAttributes und Annotations eine maßgeschneiderte Fehlerbehandlung implementieren könnt.
Read more13.08.2024 By Christian Ortiz
Spring Modulith as an alternative to microservices
Microservices are a prevailing trend in software architecture that breaks down large systems into independent units. They offer advantages, but are not always necessary. Alternatively, a modularised monolith can be useful, especially if the boundaries between microservices are fluid. In this blog post, I will discuss modularisation concepts in the Java ecosystem, with a focus on Spring Modulith.
Read more16.07.2024 By Milena Fluck
The leftover box trap: the dangers of common structures in repositories
Do you have a box of leftovers at home? A box where you don't know exactly what's in it. It could contain anything. If you're looking for something, then definitely have a look in this box. In our repos you will occasionally find boxes with names like "Common" or "Shared". This blog post explains how to sort them correctly.
Read more26.06.2024 By Merlin Bögershausen
Automated modernisation - Part 3
The first article on this topic explained the basic concepts of Open Rewrite. The second article dealt with the technical implementation of recipes and this article discusses the use of Open Rewrite in the context of an organisation's application portfolio. The use of internal libraries, application portfolios and efficient use as a service will be discussed.
Read more25.06.2024 By Marc Hatt
Understanding UX: Prototyping
UX and UI design are often misunderstood activities. For laypeople who have heard of it in the context of an IT project, it most likely means: "Make sure the end product looks good". We shed light on this preconception and show the added value UX, or digital design in general, can generate.
Read more21.06.2024 By Murat Fevzioglu
Virtual Threads in Java
The development of the virtual threads, also known as Project Loom, began in late 2017. The final implementation brings with it two major changes. Virtual threads now support thread-local variables by default, and they are now monitored by default and observable via the new thread dump. This blog post introduces virtual threads and explains how they are used in Java.
Read more19.06.2024 By Daniil Zaonegin
Create .NET Blazor Hosted App with the new Blazor Web App Project Template (in .NET 8)
Blazor is a .NET front-end framework for creating an interactive web UI with C# and not JavaScript. This offers many advantages, such as being able to share code between the back-end and front-end. With Blazor, you no longer have to use two different languages, JavaScript for the frontend and C# for the backend. This makes it easier to reuse code and write consistent applications in a familiar language environment. In addition, many errors can be resolved at compile time and no longer occur dynamically at application runtime, as was the case in JavaScript.
Read more11.06.2024 By Merlin Bögershausen
Automated modernisation - Part 2
Open Rewrite offers a variety of migrations for common libraries and frameworks. They significantly reduce the migration effort and make the application repeatable. But how can developers provide recipes for their own frameworks? In the second part of my blog post on automated modernisation, I provide an introduction to the development of Open Rewrite recipes.
Read more31.05.2024 By Merlin Bögershausen
Automated modernisation - Part 1
This blog post is the first of three parts whose overarching theme is the open source framework Open Rewrite, which can be used to automate large-scale source code migrations. In this first part, I will briefly outline the motivation for using Open Rewrite. I will describe how existing migrations can be used to modernise a software product.
Read more