Полезная нагрузка Json
{
"id": "test1",
"quantity": {
"amount": 10
}
}
Схема Json
{
"type": "object",
"$schema": "http://json-schema.org/draft-06/schema#",
"properties": {
"id": {
"type": "string"
},
"category": {
"type": "string"
},
"quantity": {
"type": "object",
"properties": {
"amount": {
"type": "integer"
}
},
"required": ["amount"]
}
},
"required": [
"id",
"quantity"
]
}
Использование библиотеки проверки org.everit.json.schema.
SchemaLoader schemaLoader = SchemaLoader.builder().schemaJson(jsonSchema).build();
Schema schema = schemaLoader.load(jsonSchema, SchemaClient.classPathAwareClient());
schema.validate(jsonSubject);
проверки работают нормальнодля обязательных полей. Но необходимо также проверить необязательные поля. Есть ли способ показать предупреждение, когда поля, не помеченные как «обязательные», отсутствуют в полезной нагрузке JSON. Например, в вышеприведенном случае необходимо, чтобы в полезной нагрузке JSON отсутствовала «категория».