У меня есть большой кусок Json, из которых я только заботиться о небольшом подмножестве например:Play ScalaJSON Считывает ошибка несоответствия [T] синтаксический тип
{
"request": {
"c": {
"code": "AA",
"fsCode": "AA"
},
"codeType": {},
"number": {
"requested": "100",
},
"scheduled": [
{
"code": "BB",
"number": "100",
"classes": [
"F",
"Y"
]
}]
}
Я просто хочу, чтобы извлечь code
и number
переменные. Я попытался с помощью Reads
следующим образом:
case class TheResult(result: (String, String))
implicit val theScheduledReads: Reads[TheResult] = (
(__ \ "code").read[String] and
(__ \ "number").read[String] tupled) map TheScheduledFlight.apply _
case class ResultList(addr: List[TheResult])
implicit val resultReads: Reads[ResultList] =
(__ \ "scheduled").read(List[TheResult](theScheduledReads)) map ResultList _
, а затем, чтобы получить доступ к результату:
response.json.validate[List[ResultList]]
Однако, он бросает эту ошибку:
type mismatch; found : play.api.libs.json.Reads[details.client.TheResult] required: details.client. TheResult (__ \ "address").read(List[TheResult](resultReads)) map (TheResult.apply _)
Любые идеи что я делаю неправильно?