Play Scala JSON body parser default value field

Viewed 3682

Hello I'm having trouble with a JSON body parser. My problem is the following I have a case class with some optional parameters (Option[T]) and a parameter with a default value which I do not want to be typed as Option[T].

However when parsing a JSON body having the field with the default value omitted I get an error

play.api.libs.JsError
/count error path missing

Here is my controller code :

object MyController extends Controller{


  implicit val itemWrites = Json.writes[Item]
  implicit val itemReads = Json.reads[Item]
  implicit val itemFormats = Json.format[Item]

  def add = DBAction(parse.json){ implicit rs =>

    val item =  rs.request.body.validate[Item]
}

Here is my case class :

case class Item( id:Option[Int], name:String, description:Option[String], count:Int=0)

Any chance I can achieve the same behavior as Option[T] with the default value field?

Thanks

I'm using :

  • Scala 2.10
  • Play Framework 2.2.1
  • Play-Slick plugin 0.5.0.8
2 Answers
Related