Anjunar

Architektur, die bewohnbar bleibt

Gedanken zu Jakarta EE, Scala, UI-Architektur und der stillen Arbeit an langlebigen Systemen.

24 Artikel
30.09.2026

Eine vollständige Webanwendung mit Scala entwickeln

Eine praxisnahe Reihe, in der aus einem leeren Repository ein bereitgestellter Blog mit Scala, Scala.js und PostgreSQL entsteht. Zum Einstieg geht es um die Funktionen, den Technologie-Stack und den Weg einer Anfrage.

30.09.2026

Vom leeren Verzeichnis zum lauffähigen Projekt

Wir erstellen die erste funktionierende Version unseres Scala-Blogs: sbt-Build einrichten, Undertow, RESTEasy und CDI verbinden und den HTTP-Endpunkt mit einem echten Integrationstest prüfen.

30.09.2026

Einen HTTP-Server mit Jakarta-Komponenten starten

Undertow, RESTEasy und Weld über die CDI-Erkennung verbinden, einen Endpunkt für die Erreichbarkeit ergänzen, den Weg einer Anfrage durch ihre Gültigkeitsbereiche verfolgen und Registrierung sowie Aufräumen mit echten HTTP-Tests prüfen.

30.09.2026

Datenbankzugriff und Transaktionen verstehen

PostgreSQL, Hibernate, Agroal und Narayana verbinden. Einen Persistence Context bis zur Serialisierung der Antwort offen halten und Commit sowie Rollback mit echten Datenbanktests prüfen.

30.09.2026

Unser erstes Domänenmodell

BlogPost mit UUID, Version, eindeutigem Slug und Veröffentlichungsregeln modellieren. Entitäten über CDI finden, in PostgreSQL abbilden und Validierung sowie optimistisches Locking prüfen.

30.09.2026

Das Datenmodell weiterentwickeln

Ein bestehendes PostgreSQL-Schema mit Hibernate DDL Manager übernehmen, Tabellen und Spalten stabile Identitäten geben und eine optionale Zusammenfassung ergänzen, ohne Artikel oder Veröffentlichungsregeln zu verlieren.

30.09.2026

Eine Entität mit EntitySchema beschreiben

Ein gemeinsames Feldmodell für JSON-Mapping und typisierte Criteria-Abfragen definieren. Alle BlogPost-Felder abdecken, Zeitstempel erhalten und prüfen, dass lesbare Felder vor eingehenden Änderungen geschützt bleiben.

30.09.2026

Artikel über REST bereitstellen

Das BlogPost-Modell als öffentliche API anbieten. Mit Entity-Graphen, JSON-Mapper und Data/Table-Antworten veröffentlichte Listen und Details ausgeben und den Vertrag durch echte HTTP-Anfragen prüfen.

30.09.2026

Die erste Oberfläche mit Scala.js entwickeln

Mit der Komponenten-DSL von Scala.js UI ein lesbares Journal bauen. Properties, Bedingungen und Listen binden, die Seite über Undertow ausliefern und Tastaturbedienung sowie mobiles Layout in einem echten Browser prüfen.

30.09.2026

Frontend und Backend verbinden

Veröffentlichte Artikel in Scala.js-Modelle laden, Routen-Loader mit der REST-API verbinden und leere Listen, fehlgeschlagene Anfragen und Navigation behandeln, ohne den Entity-Vertrag zu verlieren.

30.09.2026

Benutzerkonten und Anmeldung

Den ersten Administrator anlegen und Soteria in Undertow integrieren: Passwortanmeldung, geschützte Sitzungen und ein Kontoformular mit Scala.js.

30.09.2026

Registrierung und Kontowiederherstellung

Den Besitz einer E-Mail-Adresse vor dem Anlegen eines Leserkontos bestätigen, einmalig nutzbare Links versenden und Passwörter zurücksetzen, wobei bestehende Sitzungen widerrufen werden.