Filtre de servlet par rapport à l'intercepteur CXF pour la modification de la requête & amp; contenu de la réponse?

Nous avons construit un peu de REPOS (jax-rs) des services web avec Apache CXF. Ils retourner une réponse JSON.

J'ai maintenant besoin de modifier certains des paramètres de la requête, et le contenu de la réponse. (En gros, nous avons besoin d'encoder/crypter les données renvoyées par le service; et décoder/décrypter les mêmes données lorsqu'il est utilisé comme paramètre dans un appel de service ultérieure.)

Il semble que j'ai au moins 4 options ici:

  1. Utiliser un filtre de Servlet
  2. Utiliser un CXF Intercepteur
  3. Utiliser un JAX-RS Filtre
  4. Ne pas utiliser n'importe quel modèle particulier, et d'effectuer l'encodage/décodage dans le service de la logique.

J'ai utilisé de la Servlet Filtres avant, et de comprendre exactement comment modifier la requête params et le corps de la réponse, je vais donc me pencher vers que. Cependant, je suis ouvert à l'aide d'un CXF Intercepteur ou de JAX-RS filtre si c'est la plus "bonne" façon de résoudre ce problème lors de l'utilisation de CXF. Mais en se fondant sur la documentation, je ne comprends pas vraiment comment pour ce faire. Par exemple, dois-je utiliser le setContent méthode de l'objet du Message à modifier la réponse JSON? Qu'est-ce que le paramètre de format dans ce cas, il suffit de String.class?

source d'informationauteur Michael Lucas