следующий код проверяет поля json на соответствие классу case. Как я могу добавить пользовательские сообщения об ошибках, если имя, электронная почта, адрес имеют значение null или если вместо строки указано целое число?
implicit val reads: Reads[ValidateDetails] = (
(JsPath \ "name").read[String] and
(JsPath \ "email").read[String] and
(JsPath \ "address").read[String])(ValidateDBConfigJson.apply _)
}
Я также хочу, чтобы пользовательские сообщения об ошибках в следующем формате json.
{
"ErrorMessages" :
[
"Error 1",
"Error 2"
]
}

После чтения для каждого поля вы можете filter получить результат ошибки проверки. Например, для поля name:
(JsPath \ "name").read[String](JsPath \"name").read[String].filter(ValidationError("The length for name should be more than 5 characters"))(_.length > 5)