Могу ли я использовать библиотеку Scala lift-json для анализа JSON на карте?
Есть ли способ использовать класс JObject библиотеки lift-json, чтобы действовать как карта?
Например:
val json = """
{ "_id" : { "$oid" : "4ca63596ae65a71dd376938e"} , "foo" : "bar" , "size" : 5}
"""
val record = JsonParser.parse(json)
record: net.liftweb.json.JsonAST.JValue = JObject(List(JField(_id,JObject(List(JField($oid,JString(4ca63596ae65a71dd376938e))))), JField(foo,JString(bar)), JField(size,JInt(5))))
</code>
Я бы ожидал запись ("Foo"), чтобы вернуть "бар"
Я заметил функцию значений, и она распечатывает карту, но фактический объект - это JValue.this.Values?
scala> record.values res43: record.Values = Map((_id,Map($oid -> 4ca63596ae65a71dd376938e)), (foo,bar), (size,5))
scala> record.values("foo") :12: error: record.values of type record.Values does not take parameters record.values("foo")
Есть примеры с библиотекой lift-json, извлекающей класс case, но в этом случае я заранее не знаю схему json.