Implémentation d'une méthode de ressource JSON à l'aide d'objets annotés JAXB avec IBM JSON4J

Dans WebSphere Application Server version 8, le processeur JSON par défaut qui gère la sérialisation des classes annotées JAXB vers JSON est Jackson. Si vous souhaitez utiliser le processeur IBM® JSON4J à partir de versions précédentes de Feature Pack for Web 2.0, vous devez ajouter une classe de fournisseur. Jackson offre un traitement JSON plus avancé.

Pourquoi et quand exécuter cette tâche

Pour utiliser le processeur IBM JSON4J dans votre application, vous devez ajouter une classe Java™ qui étend la classe JSON4JJAXBProvider à votre application.

Procédure

  1. Si vous utilisez l'analyse des annotations sans spécifier toutes les classes JAX-RS via une sous-classe javax.ws.rs.core.Application, vous devez ajouter une classe Java qui étend la classe com.ibm.websphere.jaxrs.providers.json4j.JSON4JJAXBProvider. L'exemple suivant illustre une classe JSON4JJAXBProvider personnalisée :
    package com.example.jaxrs;
    @Provider
    @Consumes(value = {MediaType.APPLICATION_JSON, "application/javascript"})
    @Produces(value = {MediaType.APPLICATION_JSON, "application/javascript"})
    public class CustomJSON4JJAXBProvider extends
        com.ibm.websphere.jaxrs.providers.json4j.JSON4JJAXBProvider {
    }
  2. Si vous utilisez une classe javax.ws.rs.core.Application personnalisée qui répertorie les classes JAX-RS, vous devez ajouter la classe JSON4JJAXBProvider personnalisée à la sous-classe Application. L'exemple suivant illustre une sous-classe Application personnalisée :
    package com.example.jaxrs;
    public class CustomApplication extends javax.ws.rs.core.Application {
    
        @Override
        public Set<Class<?>> getClasses() {
            Set<Class<?>> classes = new HashSet<Class<?>>();
            /* add your normal JAX-RS classes */
    
            classes.add(CustomJSON4JJAXBProvider.class);
            return classes;
        }
    }

Résultats

Vous utilisez maintenant le processeur IBM JSON4J pour la sérialisation JAXB-JSON au lieu du processeur Jackson intégré par défaut dans le produit.


Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxrs_jsoncontent_jaxb_json4j
Nom du fichier : twbs_jaxrs_jsoncontent_jaxb_json4j.html