I have tried to create a json object using play.api.libs.json. I got following two compile errors. I tried several ways but I could n`t find any solution for this.
Here is the compile errors
No implicit format for Array[models.Graphs.piechartdata] available.
Read from stdout: implicit val piec = Json.writes[piechart] implicit val piec = Json.writes[piechart] Read from stdout: ^
No Json serializer found for type models.Graphs.piechart. Try to implement an implicit Writes or Format for this type. Read from stdout: println(Json.toJson(p).toString) println(Json.toJson(p).toString) Read from stdout: ^
Here is my Code
package models.Graphs
import play.api.Play.current
import play.api.libs.json._
import scala.language.postfixOps
import scala.collection.mutable.ArrayBuffer
case class piechart(element:String,data:Array[piechartdata])
case class piechartdata(label:String,value:Int)
object GraphsModel{
implicit val piec = Json.writes[piechart]
implicit val piecdata = Json.writes[piechartdata]
def createPieChart()={
var ar = ArrayBuffer[piechartdata]()
ar += piechartdata("Download Sales",12)
ar += piechartdata("In-Store Sales",30)
var arr:Array[piechartdata]=ar.toArray
var p=piechart("donut-example",arr)
println(Json.toJson(p).toString)
}
}
Actually I need to create following json object
{ element: 'donut-example', data: [ {label: "Download Sales", value: 12}, {label: "In-Store Sales", value: 30} ] }