user7980 user7980 - 10 months ago 256
Scala Question

How to convert Map to Json using Json4s

I am using the json4s library to convert maps in scala to json but keep running into a basic error when operating on Map[Char,Int]:

Here is the code sample that is giving me problems.

import org.json4s.jackson.JsonMethods._
import org.json4s.JsonDSL.WithDouble._

val myMap = Map('a' -> 123)


error: No implicit view available from (Char, Int) => org.json4s.JsonAST.JValue.

Question: What is the correct way to convert a Map that is made of [Char, Int] to a Json object using Json4s?

Answer Source

The keys of a JSON object are always strings, and furthermore, there is no equivalent of Char in JSON. See for the specification.

You could convert the keys of your Map[Char, Int] before rendering: { case(k, v) => (k.toString, v) }