You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The 'problem' here is that list is a map from String to Serializable and there is no JsonWriter that works for every Serializable.
The list is a map from String to Serializable because there are both String and List[String] values in there, and Serializable is the only thing those 2 types have in common.
val list = Map("k"->List("f"),"n"->List("r"),"d"->List("ffff")) and val list = Map("k"->"f","n"->"r","d"->"ffff") would both work, but of course are not what you want.
You could immediately create a JSON object with: JsObject("k"->"f".toJson, "d"->List("ffff").toJson)
But I would probably recommend introducing a type for whatever your map represents:
case class WhatItIs(k: String, n: String, d: List[String])
implicit val format = jsonFormat3(WhatItIs)
val list = WhatItIs("f", "r", List("ffff"))
list.toJson
import spray.json._
import spray.json.DefaultJsonProtocol._
val list = Map("k"->"f","n"->"r","d"->List("ffff"))
println(list.toJson)
compiler error: Cannot find JsonWriter or JsonFormat type class for scala.collection.immutable.Map[String,java.io.Serializable]
I used wrong?
The text was updated successfully, but these errors were encountered: