2

Read定義でカスタム エラー メッセージを直接提供したいと思います。

implicit val ar = (
 (__ \ "firstName").read[String].customError(ValidationError("bad format", "firstName")) and
 (__ \ "lastName").read[String] and
 (__ \ "address").read[Address]
)(Employee)

これは可能ですか?

4

1 に答える 1

4

またはmapErrorにはまだ施設がありません。これを行う最善の方法は、独自の Reads[String] を再定義することです。Reads[T]JsResult

implicit val StringReads = Reads{ json => json match {
  case JsString(s) => JsSuccess(s)
  case _ => JsError(Seq(JsPath() -> Seq(ValidationError("custom.error"))))
} }
于 2013-02-13T10:54:12.890 に答える