Parsing json works only for case class
<p>I try to parse json to my custom class but in one case it's impossible.
I have trait named Conf with some fields and metods. Two classes extending this trait and in constructors, they set trait parameters (and other things)</p>

<pre><code>trait Conf extends Serializable {
val srcId: Int
val tableName: String
val delimiter: Char
val header: Boolean
}

class WorkingConf(val srcId: Int,
          val identifier: String,
          val uploadingDir: String,

...
}

class BadConf(val srcId: Int,
                      val tableName: String,
                      val rawDir: String,
                      val delay: Integer = 0,
                      val delimiter: Char = ';',
                      val header: Boolean = false,
                      val tableSchema: String = "",
                      val dpInterval: Int = 30
                     ) extends Conf {




  def this() {
    this(0,"", "", 0,';', false, "")
  }
</code></pre>

<p>}</p>

<p>First class was written earlier by someone else.
I try to write similar class, but point is that when I parse json:</p>

<pre><code>Json.parse[ExtAConf](conf)
Json.parse[ExtBConf](conf2)
</code></pre>

<p>Parse BadConf got Unreconized field exception "tableName" with adnotation 
" not marked as ignorable (3 known properties: , "header", "srcId", "delimiter"])"</p>

<p>When my json file looks something like:</p>

<pre><code> {
    "srcId": "1",
    "tableName": "tableName",
    "rawDir": "path",
    "delay": "0",
    "delimiter": ";",
    "header": "false",
    "tableSchema": "",
    "dpInterval": "30",

}
</code></pre>

<p>Json for WorkingConf looks similar and I think that it isn't problem.</p>

<p>Plus, When I change class BadConf to <strong>case class</strong> then works fine, but in json file I have to set all parameters from constructors.</p>