JavaScript Object
Notation (JSON) est un format de support courant que consomment et produisent les services RESTful. Vous pouvez utilisez ce format d'échange de données simple basé sur la notation littérale d'objet de JavaScript pour échanger des données.
Pourquoi et quand exécuter cette tâche
JSON est un format de données courant indépendant du langage de programmation. Divers navigateurs Web et diverses bibliothèques JavaScript, telles que Dojo, prennent en charge JSON. WebSphere prend en charge les bibliothèques Jackson and JavaScript Object Notation
(JSON4J).
La bibliothèque Jackson est un processeur JSON
(à la fois analyseur et générateur) basé sur la technologie d'analyse de type pull (extraction)
de Streaming API for XML (StAX). Elle offre les fonctions d'écriture et de lecture de base de JSON
(analyse syntaxique et génération), un modèle d'arborescence complet basé sur les noeuds, ainsi que
la liaison de données objet-JSON.
Vous pouvez utiliser la bibliothèque Jackson pour la conversion
et la déconversion de données JSON à destination et en provenance d'objets POJO (Plain Old
Java™ Objects) et d'objets JAXB
(Java Architecture for XML Binding). Pour utiliser Jackson afin de traiter les données JSON, vous devez inclure les bibliothèques Jackson
dans le chemin d'accès aux classes. Après avoir ajouté Jackson au chemin d'accès aux classes,
utilisez les objets POJO et JAXB pour représenter les corps des messages de demande et de
réponse. Jackson est inclus dans l'environnement d'exécution côté serveur de ce produit.
La
bibliothèque JSON4J est une implémentation d'un ensemble de classes de gestion JSON à utiliser
dans les environnements Java. La bibliothèque JSON4J fournit un modèle Java simple pour créer et manipuler les données à convertir en données JSON.
Vous pouvez utiliser la bibliothèque JSON4J pour produire des données JSON. Pour
utiliser les types JSON4J comme types d'entités pris en charge, vous devez inclure la bibliothèque JSON4J
dans le chemin d'accès aux classes. Après avoir ajouté JSON4J au chemin d'accès aux classes,
utilisez JSONObject et les classes JSONArray à partir de la bibliothèque JSON4J comme
types pour représenter les corps des messages de demande et de réponse. JSON4J est inclus
dans l'environnement d'exécution côté serveur de ce produit.
- Configurez l'environnement de développement.
- Avant de développer des applications JAX-RS, vous devez configurer l'environnement de déploiement en ajoutant les bibliothèques JAX-RS dans le chemin d'accès aux classes.
- Définissez les ressources dans les applications Web JAX-RS.
- Les ressources sont les principaux blocs fonctionnels d'un service RESTful. Les ressources peuvent contenir des données statiques ou mises à jour dynamiquement. Un manuel, une commande et une collection d'utilisateurs sont des exemples de ressources d'une application de librairie en ligne. En identifiant les ressources dans l'application, vous améliorez l'utilité du service et facilitez son développement.
- Configurez l'application JAX-RS.
Vous pouvez configurer les applications JAX-RS de plusieurs façons, selon vos besoins. Pour tirer parti de la fonctionnalité
Java EE (Java Platform, Enterprise Edition) 6, vous pouvez
utiliser les fonctions d'analyse des annotations. L'analyse des annotations permet d'ignorer une sous-classe
JAX-RS javax.ws.rs.core.Application ou de disposer d'une sous-classe
javax.ws.rs.core.Application à définition minimale.
Sinon, vous pouvez aussi spécifier le servlet ou le filtre IBM® JAX-RS si vous préférez utiliser la fonction qu'ils contiennent.
En utilisant l'une des méthodes de configuration de JAX-RS version 1.1,
vous pouvez omettre une sous-classe javax.ws.rs.core.Application
dans votre application, ou définir une sous-classe javax.ws.rs.core.Application
qui renvoie en ensemble de classes vide pour signifier à l'environnement d'exécution JAX-RS
de rechercher et d'utiliser toutes les classes JAX-RS de l'application. Cette méthode peut être
utile pour ne pas avoir à ajouter manuellement chaque classe JAX-RS pertinente à une sous-classe
javax.ws.rs.core.Application au cours du développement de l'application.
En indiquant le servlet ou le filtre IBM JAX-RS spécifique, vous pouvez bénéficier d'un comportement IBM JAX-RS particulier et le garantir. Par exemple, l'utilisation du filtre IBM JAX-RS peut faciliter le développement d'une application Web faisant appel à un mélange de ressources JAX-RS et de fichiers JSP (JavaServer Pages) avec les mêmes modèles d'URL.
Il existe une méthode de configuration JAX-RS V1.1 qui prend en charge l'utilisation d'un fichier
web.xml facultatif, qui vous permet de spécifier des contraintes ou des rôles
de sécurité, ou de bénéficier d'autres fonctions activées par ce fichier.
Vous devez indiquer les informations dans un fichier web.xml.
Choisissez l'une des trois méthodes suivantes pour configurer votre application JAX-RS :
- Configuration
d'applications JAX-RS selon les méthodes JAX-RS 1.1
Utilisez cette méthode
pour employer les fonctions d'analyse des annotations ou les méthodes de configuration JAX-RS 1.1. Vous pouvez
utiliser les fonctions d'analyse des annotations pour promouvoir la portabilité de l'application, réduire la quantité de code de
configuration ou modifier l'application dynamiquement sans changer son code.
- Configurez le fichier web.xml pour les servlets JAX-RS
Utilisez cette
méthode pour indiquer des fonctions activées à l'aide des paramètres d'initialisation du servlet, afin d'obtenir un changement de
comportement et le servlet IBM JAX-RS. Lorsque vous utilisez des servlets, vous pouvez définir un chemin de servlet dans le fichier web.xml qui est ajouté à l'URL de base.
- Configuration du fichier web.xml pour les filtres JAX-RS
Utilisez cette méthode pour employer le filtre lorsque vous avez des fichiers JSP, d'autres servlets et filtres ainsi que des ressources
JAX-RS incluant plusieurs masques d'URL. Des filtres peuvent être définis dans le fichier
web.xml pour indiquer les URL à partir desquelles le filtre peut être appelé.
- Implémentez une méthode de ressource en utilisant du contenu JSON pour une entité de demande et de réponse.
- Les service RESTful peuvent consommer et produire du contenu en utilisant le format JSON.
- Assemblez les applications Web JAX-RS.
- Après avoir développé les fichiers de classe Java de l'application Web JAX-RS et modifié le fichier web.xml pour activer le servlet JAX-RS, vous pouvez assembler l'application. Assemblez-la dans un package WAR (archive WAR). Vous pouvez assembler le package WAR dans un package EAR (fichier d'archive d'entreprise), le cas échéant.
- Déployez les applications Web JAX-RS.
- Après avoir assemblé l'application Web JAX-RS, vous devez déployer le package WAR (web
archive) ou EAR (enterprise archive) sur le serveur d'applications.