Jelly: XML-Scripting mit vielen Komponenten

Jetzt zu den inneren Abläufen von Jelly, zum Aufbau einer persönlichen Bibliothek mit Jelly Tags. Hier wird ein Beispiel-Tag verwendet, der unseren Fließtext auf Groß- oder Kleinbuchstaben einstellt. Jelly Tags werden in den in Tabelle A aufgeführten Tag-Bibliotheken versammelt. Tag-Bibliotheken werden unter Jelly als Namensraum registriert.

Dieses Beispiel macht die zentrale Tag-Bibliothek im voreingestellten Namensraum verfügbar und unsere persönliche Bibliothek im Namensraum für Groß- und Kleinschreibung (case). CaseTagLibrary muss die Klasse org.apache.commons.jelly.TagLibrary erweitern und die Methode registerTag für jeden verfügbaren Tag aufrufen.

Nunmehr steht ein Tag zur Verfügung: case. Der CaseTag muss org.apache.commons.jelly.TagSupport erweitern. TagSupport ist als abstrakt deklariert und verlangt die Implementierung von doTag (XMLOutput output) auf. Nach dem Aufrufen sämtlicher Setter wird diese Methode aufgerufen. Für den Case-Tag sucht man nach einem Attribut. Im Falle dieser Tag-Klasse wird eine Art von Setter-Routine wie folgt definiert:

Nun zum Herzstück der CaseTag-Klasse, der doTag-Methode. Zunächst muss man sich vergewissern, ob der Nutzer das erfragte Attribut eingegeben hat (Listing D).

Wenn type auf upper oder lower gesetzt wurde, kann man sofort loslegen. Der Case-Tag ist so angelegt, dass er den Inhalt des Tags nimmt und den Text entweder als Groß- oder als Kleinbuchstaben darstellt. Man greift auf den Text zu und konvertiert ihn (Listing E).

Der Case-Tag ist jetzt fertig. Der komplette Quellcode findet sich in CaseTag.java (Teil des Downloads). Der Tag kann nun beispielsweise so verwendet werden:

Für das komplette Beispiel, siehe case.jelly (ebenfalls im Download enthalten).

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

5 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

5 Tagen ago

Digitale Produkte „cyberfit“ machen

Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.

5 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…

6 Tagen ago

Apple schließt Zero-Day-Lücken in iOS, iPadOS und macOS

Zwei von Google-Mitarbeitern entdeckte Schwachstellen werden bereits aktiv gegen Mac-Systeme mit Intel-Prozessoren eingesetzt. Sie erlauben…

6 Tagen ago

Gefährliche Anzeigen für Passwortmanager Bitwarden verbreiten Malware

Die Hintermänner haben es unter anderem auf Daten von Facebook-Geschäftskonten abgesehen. Opfer werden über angebliche…

6 Tagen ago