Sunday, November 10, 2019

json - json4s - parsing fails for simple String value

Why the encoding works for "bla-b" but not the parsing ?



scala> import org.json4s._
import org.json4s._


scala> import org.json4s.native.JsonMethods._
import org.json4s.native.JsonMethods._

scala> import org.json4s.JsonDSL._
import org.json4s.JsonDSL._


scala> parse(compact(render("bla-b")))
org.json4s.ParserUtil$ParseException: expected field or array

Near: "bla-b"
at org.json4s.native.JsonParser$Parser.fail(JsonParser.scala:207)
at org.json4s.native.JsonParser$$anonfun$1.newValue$1(JsonParser.scala:155)
at org.json4s.native.JsonParser$$anonfun$1.apply(JsonParser.scala:164)
at org.json4s.native.JsonParser$$anonfun$1.apply(JsonParser.scala:117)
at org.json4s.native.JsonParser$.parse(JsonParser.scala:105)
at org.json4s.native.JsonParser$.parse(JsonParser.scala:53)
at org.json4s.native.JsonMethods$class.parse(JsonMethods.scala:11)
at org.json4s.native.JsonMethods$.parse(JsonMethods.scala:62)
... 35 elided


scala> compact(render("bla-b"))
res9: String = "bla-b"


On the other hand, this runs without errors:



scala> parse(compact(render("joco" -> "bla-b")))
res5: org.json4s.JValue = JObject(List((joco,JString(bla-b))))

No comments:

Post a Comment

hard drive - Leaving bad sectors in unformatted partition?

Laptop was acting really weird, and copy and seek times were really slow, so I decided to scan the hard drive surface. I have a couple hundr...