I am having a generic json serialization method that uses json4s
. Unfortunately, it is ignoring fields if the value is None
. My goal is to have
I assume that you would like to have None
s serialized to null
within your JSON. In this case it is sufficient to use DefaultFormats.preservingEmptyValues
:
import java.util.Date
import org.json4s._
import org.json4s.jackson.Serialization
object test extends App {
implicit val f = DefaultFormats.preservingEmptyValues // requires version>=3.2.11
case class JsonTest(x: String, y: Option[String], z: Option[Int], a: Option[Double], b: Option[Boolean], c:Option[Date], d: Option[Any])
val v = JsonTest("test", None, None, None, None, None, None);
// prints {"x":"test","y":null,"z":null,"a":null,"b":null,"c":null,"d":null}
println(Serialization.write(v))
}