JavaScript Object
Notation (JSON) ist ein allgemeines Medienformat, das von REST-konformen Services konsumiert und erstellt wird. Sie können dieses Lightweight-Datenaustauschformat,
das auf der JavaScript-Notation "object-literal" für den Datenaustausch basiert, verwenden.
Informationen zu diesem Vorgang
JSON ist ein gängiges, programmiersprachenneutrales Datenformat. Viele Web-Browser und
JavaScript-Bibliotheken wie z. B. Dojo bieten Unterstützung für JSON. WebSphere
unterstützt JSON4J-Bibliotheken (Jackson and JavaScript Object Notation).
Die Jackson-Bibliothek
ist ein JSON-Prozessor (Parser und Generator), der auf der StAX-Technologie (Streaming API for XML) für Pull-Parser basiert.
Sie stellt grundlegende Lese- und Schreiboperationen im JSON-Format (parsen und generieren), ein vollständiges knotenbasiertes Baumstrukturmodell
sowie eine Object-to-JSON-Datenbindung bereit.
Sie können die Jackson-Bibliothek verwenden, um Unmarshaling- und Marshaling-Operationen
in und aus POJO- und JAXB-Objekten (Plain Old Java™ Objects / Java Architecture for XML Binding)
auszuführen.
Um Jackson für die Verarbeitung von JSON-Daten zu verwenden, müssen Sie die Jackson-Bibliotheken im Klassenpfad angeben. Wenn Sie Jackson zum Klassenpfad hinzugefügt haben,
müssen Sie POJOs und JAXB-Objekte für die Darstellung
von Anforderungs- und Antwortnachrichtentexten verwenden. Jackson ist in der serverseitigen Laufzeitumgebung dieses Produkts enthalten.
Die JSON4J-Bibliothek ist eine Implementierung von JSON-Handling-Klassen
für Java-Umgebungen. Die JSON4J-Bibliothek bietet ein einfaches Java-Modell
für die Erstellung
und Bearbeitung von Daten, die als JSON-Daten bereitgestellt werden sollen.
Sie können die JSON4J-Bibliothek für die Ausgabe von JSON-Daten verwenden.
Wenn Sie JSON4J-Typen als unterstützte Entitätstypen verwenden möchten, müssen Sie die JSON4J-Bibliothek im Klassenpfad angeben.
Ist das geschehen, können Sie die Klassen "JSONObject" und "JSONArray" aus der JSON4J-Bibliothek als Typen für die Darstellung
von Anforderungs- und Antwortnachrichtentexten verwenden. JSON4J ist in der serverseitigen Laufzeitumgebung dieses Produkts enthalten.
- Konfigurieren Sie die Entwicklungsumgebung.
- Bevor Sie mit dem Entwickeln von JAX-RS-Anwendungen beginnen, müssen Sie Ihre Entwicklungsumgebung
konfigurieren, indem Sie die JAX-RS-Bibliotheken im Klassenpfad hinzufügen.
- Definieren Sie die Ressourcen in den JAX-RS-Webanwendungen.
- Ressourcen sind die Grundbausteine eines REST-konformen Service. Ressourcen können statische oder dynamisch aktualisierte Daten enthalten.
Im Falle einer Onlinebuchhandlung sind Ressourcen beispielsweise ein Buch, eine Bestellung von einem Geschäft, ein Benutzerverbund. Wenn
Sie die Ressourcen in Ihrer
Anwendung definieren, können Sie den Service effizienter machen und so gestalten, dass er einfacher entwickelt werden kann.
- Konfigurieren Sie die JAX-RS-Anwendung.
Sie können JAX-RS-Anwendungen je nach Anforderungen auf unterschiedliche Weise konfigurieren.
Um die Funktionen von Java Platform,
Enterprise Edition (Java EE)
6 zu nutzen, können Sie die Scanfunktionen für Annotationen verwenden.
Wenn Sie die Scanfunktionen für Annotationen verwenden, können Sie eine JAX-RS-Unterklasse javax.ws.rs.core.Application
ausschließen oder eine minimal definierte Unterklasse javax.ws.rs.core.Application verwenden.
Alternativ können Sie das IBM® JAX-RS-Servlet bzw. den IBM JAX-RS-Filter
angeben, wenn Sie die im IBM JAX-RS-Servlet bzw. -Filter enthaltenen Funktionen
verwenden möchten.
Wenn Sie eine der Konfigurationsmethoden der JAX-RS Version 1.1
verwenden, können Sie eine Unterklasse javax.ws.rs.core.Application in Ihrer Anwendung ausschließen oder
eine Unterklasse javax.ws.rs.core.Application, die einen leeren Satz von Klassen zurückgibt, um die
JAX-RS-Laufzeitumgebung anzuweisen, alle JAX-RS-Klassen in der Anwendung zu suchen und zu verwenden.
Sie können diese Methode verwenden, wenn Sie beim Entwickeln der Anwendung nicht jede relevante JAX-RS-Klasse
manuell einer Unterklasse javax.ws.rs.core.Application hinzufügen möchten.
Durch die Angabe des speziellen IBM JAX-RS-Servlets und -Filters können
Sie bestimmte IBM JAX-RS-Verhalten nutzen und sicherstellen.
Die Verwendung des IBM JAX-RS-Filters kann beispielsweise bei der Entwicklung
einer Webanwendung mit einer Mischung von JAX-RS-Ressourcen und JSP-Dateien (JavaServer Pages)
mit denselben URL-Mustern hilfreich sein.
Obwohl es eine Konfigurationsmethode der JAX-RS Version V1.1 gibt, die die Verwendung einer optionalen
Datei web.xml unterstützt, müssen Sie Integritätsbedingungen für die Sicherheit oder Rollen und andere Features, die
Sie verwenden möchten und die über eine Datei web.xml aktiviert werden, in einer Datei web.xml angeben.
Wählen Sie eine der folgenden drei Methoden aus, um Ihre
JAX-RS-Anwendung zu konfigurieren:
- JAX-RS-Anwendungen mithilfe von Methoden der JAX-RS Version 1.1 konfigurieren
Verwenden
Sie diese Methode, wenn Sie die Scanfunktionen für Annotationen oder die Konfigurationsmethoden der
JAX-RS Version 1.1 verwenden möchten. Sie können die Scanfunktionen für Annotationen verwenden, um die Portierbarkeit von Anwendungen
zu fördern, das Konfigurationscodevolumen zu minimieren oder die Anwendung dynamisch zu ändern,
ohne Änderungen am Anwendungscode vorzunehmen.
- Datei "web.xml" für JAX-RS-Servlets konfigurieren
Verwenden
Sie diese Methode, wenn Sie Features, die über Initialisierungsparameter für Servlets
aktiviert werden, angeben möchten, um das Verhalten zu ändern und um sicherzustellen,
dass Sie das IBM JAX-RS-Servlet erhalten. Wenn Sie Servlets verwenden möchten,
können Sie einen Servletpfad in der Datei "web.xml" definieren, der an den Basis-URL angefügt wird.
- Datei "web.xml" für JAX-RS-Filter konfigurieren
Verwenden
Sie diese Methode, um den Filter zu verwenden, wenn Sie JSPs, andere Servlets und Filter sowie
JAX-RS-Ressourcen mit verschiedenen URL-Mustern haben. Sie können die Datei web.xml
konfigurieren, um Filter zu definieren, die die möglichen URLs angeben, unter denen der Filter aufgerufen werden kann.
- Ressourcenmethode mit JSON-Inhalt für eine Anforderungs- und eine Antwortentität implementieren
- REST-konforme Services können mit dem JSON-Format Inhalt konsumieren und erstellen.
- Assemblieren Sie JAX-RS-Webanwendungen.
- Nachdem Sie die Java-Klassendateien für Ihre JAX-RS-Webanwendung
entwickelt und die Datei "web.xml" bearbeitet haben,
um das JAX-RS-Servlet zu aktivieren, können Sie die Anwendung assemblieren. Assemblieren Sie die Webanwendung in einem WAR-Paket (Webarchiv). Sie
können das WAR-Paket in einem EAR-Paket (Unternehmensarchiv) assemblieren, falls dies erforderlich ist.
- Implementieren Sie JAX-RS-Webanwendungen.
- Wenn Sie die JAX-RS-Webanwendung assembliert haben, müssen Sie das WAR-Paket oder das EAR-Paket im Anwendungsserver implementieren.