2016-10-06 3 views
3

ich diesen Code habenJson4s ignoriert @JsonProperty jackson Anmerkungen

import com.fasterxml.jackson.annotation.JsonProperty 
import org.json4s.DefaultFormats 
import org.json4s.jackson.Serialization.{read, write} 

object Testing extends App { 
    implicit val formats = DefaultFormats 
    val json = 
      """ 
       |{ 
       |"1strange_field_name":"name" 
       |} 
      """.stripMargin 
    println(read[Test](json)) 
} 

case class Test(@JsonProperty("1strange_field_name") testName: Option[String]) 

Es ist zu Drucken Test (Einige (Name)), aber es wird Druck Test (None). Dies liegt daran, dass json4s die @ JsonProperty Annotation nicht verwendet. Gibt es eine Möglichkeit, json4s so zu konfigurieren, dass sie die Jackson-Annotationen verwenden?

Antwort

1

Ich habe festgestellt, dass der einfachste Weg, dies zu lösen, ist die genauen Feldnamen zu verwenden, indem Sie ``

case class Test(`1strange_field_name`: Option[String]) 
Verwandte Themen