URL schemaLocation = schemaLookup.getSchemaURL(schemaAnnotation.value());
JsonSchema jsonSchema = cache.getSchema(schemaLocation);
JsonNode jsonNode = mapper.readTree(jp);
List<ErrorMessage> validationErrors = jsonSchema.validate(jsonNode);
if (validationErrors.isEmpty()) {
return mapper.reader().withType(mapper.constructType(genericType)).readValue(jsonNode);
}
throw new WebApplicationException(generateErrorMessage(validationErrors));
} else {
return super.readFrom(type, genericType, annotations, mediaType, httpHeaders, entityStream);