Maison >Java >javaDidacticiel >Comment résoudre l'erreur « Aucune source d'injection trouvée » dans le téléchargement de données du formulaire Jersey Multipart ?

Comment résoudre l'erreur « Aucune source d'injection trouvée » dans le téléchargement de données du formulaire Jersey Multipart ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-12 15:26:13893parcourir

How to Resolve

Problème d'injection de données de formulaire en plusieurs parties

Description du problème :

Lors de la tentative de téléchargement de fichiers via un service REST utilisant Jersey, l'erreur suivante est rencontré :

No injection source found for a parameter of type public javax.ws.rs.core.Response

Analyse du problème :

L'erreur indique que la fonctionnalité de données du formulaire en plusieurs parties de Jersey n'est pas correctement configurée ou que les fichiers JAR requis sont manquants.

Solution :

1. Supprimez et ajoutez les fichiers JAR requis :

  • Supprimez le fichier jersey-multipart-1.18.jar, qui n'est pas compatible avec Jersey 2.x.
  • Ajouter les deux suivants dépendances :

    • jersey-media-multipart-2.17
    • mimepull-1.9.3 (dépendance extraite par jersey-media-multipart)

2. Enregistrez MultiPartFeature :

  • Enregistrez MultiPartFeature dans votre configuration Jersey :

    • ResourceConfig : registre(MultiPartFeature.class);
    • web.xml :

      <init-param>
          <param-name>jersey.config.server.provider.classnames</param-name>
          <param-value>org.glassfish.jersey.media.multipart.MultiPartFeature</param-value>
      </init-param>

3. Mettre à jour les classes importées :

  • Après avoir supprimé jersey-multipart-1.18.jar, des erreurs de compilation se produiront pour les classes importées manquantes. Mettez à jour les noms de classe pour refléter les modifications suivantes :

    • org.glassfish.jersey.media.multipart.FormDataParam
    • org.glassfish.jersey.media.multipart.FormDataContentDisposition

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