Scala JSON Rapture API выдает исключение

Я пытаюсь использовать rapture.io Scala JSON-анализатор для анализа значения JSON (rows) это выглядит так:

{
    rows: 
    [
        [
         null,
         "2016-11-16T15:43:18.000Z",
          {
            "p": 1,
            "q": 2
         },
         null,
         "Game highlights"
        ],
        [
         null,
         "2007-10-09T01:52:29.000Z",
          {
            "p": 21,
            "q": 99
         },
         "blaah",
         "Game reviews"
        ]
}

Мой код выглядит так:

import rapture.io._
import rapture.codec._
import rapture.json._
import rapture.data._
import rapture.uri._
import rapture.net._
import encodings.system
import jsonBackends.jawn._

class NotesDownloader () {

  def download(): Unit = {

    val src = uri"https://some_url".slurp[Char]
    val jsonResponse = Json.parse(src)

    val rows = jsonResponse.data.rows

    val rowsBean = rows(0).as[Array[Member]]
    println(jsonResponse)
  }

  case class Member(array: Array[Some[String]])

}

Когда я пытаюсь извлечь полные данные в MemberЯ получаю это исключение:

Error:(40, 30) not enough arguments for method as: (implicit ext: rapture.data.Extractor[Array[NotesDownloader.this.Member],rapture.json.Json], implicit mode:
    rapture.core.Mode[rapture.data.ExtractionMethods])mode.Wrap[Array[NotesDownloader.this.Member],rapture.data.DataGetException].
    Unspecified value parameters ext, mode. val rowsBean = value.as[Array[Member]]

что мне не хватает?

2 ответа

Насколько я знаю, вы могли бы использовать что-то вроде этого.

Json.parse (str).as [List [Member]]), так как это список, а не простой массив.

Сообщение об ошибке говорит вам, что вам нужны значения для неявных параметров ext а также mode, Это было бы что-то вроде этого:

implicit val ext = ...
implicit val mode = ...
val rowsBean = rows(0).as[Array[Member]] // this uses the above implicits
Другие вопросы по тегам