Document toolboxDocument toolbox

JSON Payload Konventionen

Konventionen

Die erzeugten JSON Payload sollten folgenden Konventionen entsprechen:

  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


valid
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


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


invalid
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)