Writing complex/nested JSON Writes in Scala PlayFramework -
going assume have 2 case classes: child, parent like:
case class child() case class parent(child: child) assume i've implemented writes[child]. i'd implement writes[parent].
i'm able using combinators:
implicit val parentwrites: writes[parent] = ( (__ \ "child").write[child] )(unlift(parent.unapply)) but following approach, compiler complains it's seeing type child while expecting jsvaluewrapper:
implicit val parentwrites = new writes[parent] { def writes(parent: parent) = json.obj( "child" -> parent.child ) } hoping can me understand how implement writes[parent] without using combinators.
this work me without compile issues.
import play.api.libs.json._ case class child(t: string) case class parent(child: child) implicit val parentwrites = new writes[parent] { def writes(parent: parent) = json.obj("child" -> parent.child) } if still having trouble, useful if can share complete sample stacktrace.
Comments
Post a Comment