JSON数组和Scala Seq

tal*_*lex 4 json scala deserialization

我有scala类 class A(b:Seq[String])

我的问题是当我从没有b我的类包含的字段的文本反序列化它时null.有可能强制deserealizer填空Seq吗?

我用com.fasterxml.jackson.databind.ObjectMappercom.fasterxml.jackson.module.scala.DefaultScalaModule.

编辑: 我想要解决所有这些字段的解决方案,而无需明确提及它们的完整列表.Ir改变所有声明.

Ric*_*ich 5

不幸的是,杰克逊目前不支持此功能.

您可以在此处查看相关的GitHub票证:https://github.com/FasterXML/jackson-databind/issues/347

最好的办法是在类构造函数或访问器方法中映射null为空Seq:

class A(_b: Seq[String]) {
  val b = _b match {
    case null => Nil
    case bs => bs
  }
}
Run Code Online (Sandbox Code Playgroud)

(有关其他选项,另请参阅/sf/answers/1445873131/)