Maison  >  Article  >  Java  >  Pourquoi est-ce que je reçois une erreur 415 de type de support non pris en charge lors de la publication de JSON sur un service REST Jersey ?

Pourquoi est-ce que je reçois une erreur 415 de type de support non pris en charge lors de la publication de JSON sur un service REST Jersey ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-30 17:27:03243parcourir

Why am I getting a 415 Unsupported Media Type Error When POSTing JSON to a Jersey REST Service?

POST sur le service REST de Jersey rencontre une erreur 415 : type de média non pris en charge

Considérez la situation dans laquelle vous rencontrez une erreur HTTP 415 lors de la tentative de POST Données JSON vers un service REST alimenté par Jersey. Ce problème peut survenir dans une configuration standard impliquant une ressource HelloWorld.java avec des annotations GET et POST et une requête formatée dans Postman avec un en-tête « application/json ».

Résolution de l'erreur

L'erreur indique que la distribution Jersey ne prend pas intrinsèquement en charge les conversions JSON/POJO. Pour résoudre ce problème, des dépendances supplémentaires doivent être introduites pour activer le traitement JSON. Ceux-ci incluent :

  • jersey-media-json-jackson-2.17
  • jackson-jaxrs-json-provider-2.3.2
  • jackson-core-2.3. 2
  • jackson-databind-2.3.2
  • jackson-annotations-2.3.2
  • jackson-jaxrs-base-2.3.2
  • jackson- module-jaxb-annotations-2.3.2
  • jersey-entity-filtering-2.17

Implémentation de la solution avec Maven

Utilisation de Maven , la dépendance suivante intégrera toutes les dépendances nécessaires :

<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-json-jackson</artifactId>
    <version>2.17</version>
</dependency>

Adaptation de la solution à d'autres versions de Jersey

Pour les utilisateurs utilisant des versions de Jersey autres que 2.17, reportez-vous à la documentation Jersey pour identifier les versions de dépendances transitives requises. Concentrez-vous particulièrement sur la version Jackson, car la dépendance répertoriée ici utilise Jackson 2.3.2, garantissant la compatibilité avec cette version spécifique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn