Heim >Java >javaLernprogramm >Wie behebt man den Fehler „MULTIPART_FORM_DATA: Keine Injektionsquelle gefunden' in RESTful-APIs?

Wie behebt man den Fehler „MULTIPART_FORM_DATA: Keine Injektionsquelle gefunden' in RESTful-APIs?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-09 07:43:11448Durchsuche

How to Fix the

MULTIPART_FORM_DATA: Behebung des Fehlers „Keine Injektionsquelle für Parameter gefunden“

Beim Versuch, Dateien mithilfe einer RESTful-API hochzuladen, kann es zu Problemen kommen Fehler „MULTIPART_FORM_DATA: Keine Injektionsquelle für einen Parameter vom Typ public javax.ws.rs.core.Response gefunden.“ Dieser Fehler tritt aufgrund eines Problems mit den JAR-Dateien auf, die für die Dateiverarbeitung verwendet werden.

Um dieses Problem zu beheben:

Entfernen:

  • jersey -multipart-1.18.jar (für Jersey 1.x)

Hinzufügen:

  • jersey-media-multipart-2.17
  • mimepull-1.9.3 durch die Abhängigkeit:
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-multipart</artifactId>
    <version>2.17</version>
</dependency>

Register:

  • MultiPartFeature:

    • Für ResourceConfig: register( MultiPartFeature.class);
    • Für 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>

Zusätzliche Überlegungen:

  • Aktualisieren Sie Importe, um die neuen Paketnamen für FormDataParam zu verwenden und FormDataContentDisposition.
  • Wenn Sie Dropwizard verwenden, schließen Sie dropwizard-forms ein und MultiPartBundle.

Andere mögliche Ursachen:

  • Suchen Sie nach ähnlichen ModelValidationExceptions aufgrund von:

    • Ungültige Ressourcenmethodensignaturen
    • Namespace Probleme
    • Anmerkungen zu Ressourcenklassen
    • Abhängigkeitsprobleme (Beispiele finden Sie in den Links unten)

Links zur weiteren Lektüre :

  • [Fehlerbehebung ModelValidationException](https://github.com/javaee/jersey/issues/166)
  • [Resource Method Signatures](https://javabydeveloper.com/calling-rest-service-using-postman-empty -response/)
  • [Namespace Probleme](https://stackoverflow.com/questions/35342200/glassfish-jersey-modelvalidationException-no-resource-annotation-found-for-the-ap)

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „MULTIPART_FORM_DATA: Keine Injektionsquelle gefunden' in RESTful-APIs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn