Jackson Unbekanntes Feld
Benutze ich jackson für die Konvertierung von JSON in Objekt-Klasse.
JSON:
{
"aaa":"111",
"bbb":"222",
"ccc":"333"
}
Objekt Klasse:
class Test{
public String aaa;
public String bbb;
}
Code:
ObjectMapper mapper = new ObjectMapper();
Object obj = mapper.readValue(content, valueType);
Mein code wirft, Ausnahme wie hier:
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "cccc" (Class com.isoftstone.banggo.net.result.GetGoodsInfoResult), not marked as ignorable
Ist und ich nicht möchten, fügen Sie eine Stütze der Klasse Test,ich möchte nur jackson konvertieren existieren Wert, mit ist, gibt es auch in Test.
InformationsquelleAutor der Frage YETI | 2011-12-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Jackson bietet ein paar verschiedene Mechanismen zum konfigurieren der Handhabung des "extra" JSON-Elemente. Folgenden ist ein Beispiel für das konfigurieren der
ObjectMapper
nichtFAIL_ON_UNKNOWN_PROPERTIES
.Für andere Ansätze, siehe http://wiki.fasterxml.com/JacksonHowToIgnoreUnknown
InformationsquelleAutor der Antwort Programmer Bruce
Als Jackson 2.0 die innere enum (DeserializationConfig.Funktion) wurde verschoben, um eine eigenständige enum (DeserializationFeature):
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
InformationsquelleAutor der Antwort Owen Pauling
Wenn Sie mit Jackson 2.0 (fasterxml)
InformationsquelleAutor der Antwort Aalkhodiry
Ist es wichtig, vorher zu bemerken, kritische Veränderung des Modells führen kann, Aufteilung der business-Logik.
Bessere Kontrolle über die Anwendung besser ist, behandeln Sie diese Ausnahme manuell.
Zurück wahr zu handhaben UnrecognizedPropertyException
Nicht ignorieren schweigend unbekannte Felder.
InformationsquelleAutor der Antwort Flinbor