Webframework: Javalin 4.0 bringt Unterstützung für JDK 16 und Kotlin 1.5

Javalin ist in Version 4.0 erschienen. Neben aktualisiertem Programmiersprachensupport hat es Syntaxneuerungen im Gepäck.

In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Netz

(Bild: Myriam, gemeinfrei (Creative Commons CC0))

Lesezeit: 2 Min.
Von
  • Maika Möbus

Das Open-Source-Webframework Javalin steht in Version 4.0 bereit. Über zwei Jahre sind seit der vorherigen Hauptversion Javalin 3.0 vergangen, und somit hat sich in dem Framework für Java und Kotlin einiges getan – unter anderem lassen sich nun alle Javalin-Module mit den Sprachversionen Java 16 und Kotlin 1.5 nutzen.

In Version 4.0 hat sich die Syntax für Pfadparameter von :param zu {param} geändert. Neu ist auch die Syntax <param>, die in Pfadparametern Schrägstriche zulässt. Ein einzelnes Pfadsegment kann nun sowohl statische als auch dynamische Teile sowie mehrere Pfadparameter enthalten, wie der Migrationsguide von Version 3 zeigt:

get("/:param", ...) // old
get("/{param}", ...) // new

get("/:param-suffix", ...) // invalid
get("/{param}-suffix", ...) // new

get("/files/:filename.:extension", ...) // invalid
get("/files/{filename}.{extension}", ...) // new

get("/root/:subpaths/leaf") // old (will only match /root/1/leaf)
get("/root/<subpaths>/leaf") // new (will match /root/1/2/3/leaf)

Auch überarbeitet Javalin 4.0 die Konfigurationsmöglichkeiten der Optionen für Static Files. Durch das Entfernen globaler Optionen sind diese nun per Static File Handler hinzuzufügen und lassen sich in einer in Javalin bekannten Weise konfigurieren:

config.addStaticFiles(staticFiles -> {
    staticFiles.aliasCheck = ContextHandler.AliasCheck((path, resource) -> !path.endsWith(".txt"));
    staticFiles.directory = "src/test/external/";
    staticFiles.location = Location.EXTERNAL;
});

Zu den weiteren Neuerungen in Version 4.0 zählen das Testing-Modul javalin-testtools, erweiterte Anpassungsmöglichkeiten für die Validator-Klasse sowie die Ersetzung von JavalinJson durch ein JsonMapper-Interface mit vier optionalen Methoden.

Javalin soll leichtgewichtig sein und sich von ähnlichen Frameworks abheben, indem es auf die Interoperabilität von Java und Kotlin ausgelegt ist, anstatt verschiedene Versionen für die Programmiersprachen anzubieten. Zudem unterstützt Javalin schon seit Version 3.0 mithilfe eines Plug-ins die OpenAPI-Spezifikation.

Zum Einstieg bietet die Javalin-Homepage sowohl offizielle als auch Community-Tutorials. Laut Angaben des Entwicklerteams weist das Open-Source-Framework etwa 130.000 monatliche Downloads auf.

Weitere Informationen zu Javalin 4.0 sind in einem Blogeintrag zu finden.

(mai)