Spring Rest POST Json RequestBody Der Inhaltstyp wird nicht unterstützt
Wenn ich versuche zu posten neues Objekt mit post-Methode. RequestBody konnte nicht erkennen, contentType. Der Frühling ist bereits konfiguriert und POST konnte mit der Arbeit andere Objekte, aber nicht das spezifische.
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported
Wenn ich versuche, den gleichen Wunsch, nur die änderung requestbody Objekt. Es funktioniert.
InformationsquelleAutor der Frage Thibaut | 2013-10-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich die Lösung.
Es war, weil ich hatte 2 Set-mit demselben Namen, aber unterschiedlichen Typs.
Meiner Klasse hatte id Eigenschaft int, die ich ersetzt mit Integer, wenn à Hibernitify mein Objekt.
Aber anscheinend habe ich vergessen zu entfernen, die Setzer und die, die ich hatte :
Wenn ich entfernt diese setter, rest resquest sehr gut funktionieren.
Intead zu werfen unmarshalling Fehler oder reflektieren Klasse Fehler. Ausnahme HttpMediaTypeNotSupportedException Nähte wirklich seltsam hier.
Ich hoffe, dass diese stackoverflow könnte jemand anderes helfen.
RANDNOTIZ
Können Sie Ihre Frühling server Konsole für die folgende Fehlermeldung angezeigt:
Dann können Sie sicher sein, dass Sie sich mit der Frage oben erwähnt.
InformationsquelleAutor der Antwort Thibaut
Bewusst sein, auch wenn Sie erklärt haben, Getter und setter für die Attribute der parameter, die nicht per POST (event, wenn Sie nicht deklariert im Konstruktor), zum Beispiel:
Einer post-Anforderung mit der nächsten Struktur: {"id":"1"} würde nicht funktionieren, müssen Sie name löschen get-und set -.
InformationsquelleAutor der Antwort alvgarvilla
Wirklich!!!! nachdem er 4 Stunden und wahnsinnig Debuggen fand ich dies sehr seltsam-code auf com.fasterxml.jackson.databind-Methode.deser.DeserializerCache
Ya, das problem war Doppel-setter.
InformationsquelleAutor der Antwort Reza Shahbazi
Hatte ich das gleiche Problem hatte, wenn ich zwei setter mit Enum und einem String. Ich hatte @JsonSetter Anmerkung, die sagt Jackson, was die setter-Methode während der Serialisierung. Dies löste mein Problem.
InformationsquelleAutor der Antwort Kartheek Mannepalli
Ich traf das gleiche problem, das ich gelöst, indem Deserialisieren von mir gepostete Wert :
mit den Thesen gradle dependencies :
InformationsquelleAutor der Antwort Serge Tahé
In meinem Fall hatte ich zwei Konstruktoren in der Bohne, und ich hatte den gleichen Fehler. Ich habe gerade gelöscht, einer von Ihnen und jetzt das Problem behoben ist!
InformationsquelleAutor der Antwort osoitza
So, ich hatte ein ähnliches Problem wo ich hatte eine bean mit einigen überladenen Konstruktor. Diese Bohne hatte auch Optionale Eigenschaften.
Beheben, dass ich einfach entfernt die überladene Konstruktoren und es funktionierte.
Beispiel:
InformationsquelleAutor der Antwort user_CC
Wenn Sie lobok, erhalten Sie diesen Fehler, wenn Sie es vermasseln Benennung von @JsonDeserialize, zum Beispiel:
Sollte es sein:
Es ist sehr einfach zu tun, wenn Sie tun, refactoring der Klasse Namen und vergessen-generator... und dann haben Sie viele Stunden der Freude, während Sie suchen, für den Grund des Fehlers basierend auf extrem nutzlos Ausnahme-Nachricht.
InformationsquelleAutor der Antwort Mader Levap
versuchen, hinzufügen von jackson Abhängigkeit
InformationsquelleAutor der Antwort Aborn Jiang
Sieht es ein Alter thread, aber falls jemand immer noch Kämpfe, habe ich gelöst, wie Thibaut sagt,
Vermeiden, dass zwei setter POJO Klasse, ich hatte zwei-setter für eine bestimmte Eigenschaft , Die erste war in der regulären setter-und eine unter-Konstruktor nachdem ich entfernt den man in den Konstruktor hat es geklappt.
InformationsquelleAutor der Antwort Dan