Validieren von Telefonnummern

Im letzten Beitrag wurde für die Klasse InternationalTelephoneNumber aus dem Projekt Telephone ein Serialisierer und ein Deserialisierer für Jackson erstellt. Damit ist es möglich diese Klasse direkt in REST Request einzusetzen. Zusätzlich wäre eine Validierung der Telefonnummern wünschenswert. Auf diese Weise könnten Telefonnummern mit speziellen Vorwahlen oder Durchwahlen abgelehnt werden.

Jackson am Telefon

Immer wieder kommt es vor, dass man im eigenen Spring Boot REST-Controller Klassen verwenden möchte, die nicht dafür konstruiert wurden. In der Regel trifft dies auf Klassen zu, die aus Dritt-Bibliotheken stammen.

Sichere Ahnen Prüfung mit Cryptographic Hashes

Bei der Erstellung eigner Stammbäume gibt es immer wieder den Wunsch in anderen Datenbeständen nach Familienangehörigen zu suchen. Dabei ergibt sich jedoch das Problem, dann personenbezogene Daten an andere versendet werden müssen.

Einfaches Trace-ID Logging in REST Anwendungen

Das Logging von Web-Anwendungen, bzw. allen Server-Anwendungen ist mit seinen eigenen kleinen Tücken versehen. Die üblichen, mehr oder wenig hilfreichen Log Anweisungen, die sich im Source Code tummeln, sorgen für einen stetigen Strom von Log-Ausgaben. Solange sich die Ausgabe auf einen einzelnen Request bezieht, ist häufig noch sehr gut nachvollziehbar, was gerade auf dem Server passiert. Bei sehr vielen Anfragen an den Server leidet aber die Übersicht.

Wie Roboter tröten (2)

Metallisch anmutender Mammut Umriß

Im letzten Beitrag wurde ein erster Bot für Mastodon erstellt. Der Bot postet mittlerweile drei mal täglich um 8:00, 12:00 und 16:00 Uhr ein englischsprachiges Zitat auf Mastodon. Obwohl die Anwendung schon hinreichend arbeitet, fehlen noch Kleinigkeiten zum dauerhaften Einsatz.

Wie Roboter tröten

Metallisch anmutender Mammut Umriß

Im ersten Mastodon Beitrag wurden einige Grundlagen zur API erläutert. In diesem Beitrag soll ein eigner Bot erstellt werden. Die Bots auf Mastodon sind spezielle Accounts die autmatisierte Aufgaben erfüllen. Dies können regelmäßige Info-Tröts sein, die Analyse des Nutzerverhaltens, gelegentliche Umfragen oder, oder oder. Ein Mastodon Bot wird wie ein normaler Account erstellt, jedoch wird ein zusätzliches Häkchen gesetzt.

Riding the Mammoth

Mammut Umriss auf Beton mit einem Tröt!

Seitdem die Social Media Plattform Twitter ins Trudeln geraten und ihre Zukunft ungewisser denn je ist, gewinnen alternative Angebote immer mehr an Bedeutung. Bekannteste Alternative zu Twitter ist das dezentrale und quelloffene Mastodon.
Dieser Beitrag zeigt, wie einfach die Mastodon API genutzt werden kann.

JSR 354 – Ihre Nummer fürs Geld

Java Bibliotheken

Nicht jeder JSR schafft es direkt ins JDK und dann vergisst man schon einmal, das seit 2015 eine Referenzimplementierung für Java Money existiert. Wer mit Geldbeträgen und Währungen nicht mehr direkt auf BigDecimal arbeiten möchte, sollte sich deshalb unbedingt Moneta anschauen.

REST Endpunkte mit Filtern

Neben dem Sortieren und Paginieren ist das Filtern eine recht häufige Aktion auf REST Endpunkten. Im Gegensatz zu den beiden erstgenannten gibt es aber für das Filtern keine adäquate Lösung im Spring Boot Framework. Mit geringen Aufwand kann dies aber elegant mit den Spring Boot Hilfsmitteln ergänzt werden.

FreshMarker Ausgabeformate und Autoescaping

Bei der Verwendung einer Template-Engine ist die größte Herausforderung das Einfügen der variablen Inhalte in das Dokument. Hierbei ist neben der technischen Realisierung auch die Sicherheit zu beachten. Allzu leicht könnten sonst bösartige Inhalte in das generierte Dokument gelangen. Je nach Verwendung als E-Mail, Webseite oder Konfiguration wären so diverse Angriffsszenarien denkbar. Das Problem der Absicherung gegen jede Art von Injektion wird in FreshMarker durch die Verwendung spezieller Ausgabeformate umgesetzt. Je nach Ausgabeformat werden dann spezielle Zeichen in den Interpolations maskiert.