У меня есть следующие типы scala:
case class Wrapper(v: Type)
sealed trait Type
case object TypeA extends Type
case object Typeb extends Type
Я хочу сериализовать и десериализовать Wrapper
, используя jackson
со следующим кодом:
val mapper: ObjectMapper = new ObjectMapper
mapper.registerModule(DefaultScalaModule)
val src = Wrapper(TypeA)
val txt = mapper.writeValueAsString(src)
val dst: Wrapper = mapper.readValue(txt, classOf[Wrapper])
К сожалению, этот код не 'не работает, потому что txt
это "{"v":{}}"
.
Как правильно сериализовать / десериализовать его?
Если jackson
не может это сделать, есть ли другая библиотека?