Работа с компонентом Mule Validate JSON Schema
сообщение об исключении, когда JSON не проходит проверку. В настоящее время, когда выдается JsonSchemaValidationException
, одним из доступных элементов является сообщение с подробной информацией о том, почему проверка не удалась (см. Сообщение ниже). Это сообщение создано ProcessingReport report.toString()
. Моя проблема в том, что мне нужно извлечь определенные элементы, так как не все нужно из сообщения. Точнее, error
, schema
и instance
нужны только. Можно использовать регулярное выражение / подстроку и извлекать данные подобным образом, но я боюсь, что они могут быть слишком хрупкими, поскольку успешное регулярное выражение / подстрока будет зависеть от структуры / модели сообщения. Лучшим решением было бы реализовать пользовательское сообщение об исключении (составленное из ProcessingReport
, как если бы оно использовалось как report.get("error")
или что-то подобное). Есть предложения?
Json content is not compliant with schema
com.github.fge.jsonschema.core.report.ListProcessingReport: failure
--- BEGIN MESSAGES ---
error: object has missing required properties (["issuedBy"])
level: "error"
schema: {"loadingURI":<application-location>,
"pointer":"/properties/purchaseOrder/properties/lineItems/items"}
instance: {"pointer":"/purchaseOrder/lineItems/0"}
domain: "validation"
keyword: "required"
required: ["expectedDeliveryDate","isbn","issuedBy","issuedDate","title","totalQuantity","transactionType"]
missing: ["issuedBy"]
--- END MESSAGES ---