Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Konventionen

...

  1. Unbekannte Properties führen nicht zu einem Validierungs- oder Deserialisierungs-Fehler
  2. Properties, deren Wert nicht definiert (null) ist, sind nicht Teil der Payload.

Beispiele

1. Unbekannte Properties


Codeblock
titlevalid
Sending POST request to http://localhost:49800/tmf622-product-order/v5/productOrder: [{
  "id" : "",
  "custom" : "xxx",
  "category" : "Foo",
  "unknown": "property",
  "parties" : [ ],
  "@type" : "ProductOrder"
}]


2. JsonInclude.Include.NON_NULL


Codeblock
languagetext
titlevalid
Sending POST request to http://localhost:49800/tmf622-product-order/v5/productOrder: [{
  "id" : "",
  "custom" : "xxx",
  "category" : "Foo",
  "parties" : [ ],
  "@type" : "ProductOrder"
}]

...

Codeblock
titleinvalid
Sending POST request to http://localhost:49818/tmf622-product-order/v5/productOrder: [{
  "id" : "",
  "href" : null,
  "custom" : null,
  "category" : "ErrorTest",
  "parties" : [ ],
  "@schemaLocation" : null,
  "@baseType" : null,
  "@type" : "ProductOrder"
}]


Anhang

Konfiguration des Jackson Databind ObjectMappers

  1. ObjectMapper#disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);

  2. ObjectMapper#setSerializationInclusion(JsonInclude.Include.NON_NULL)