У меня есть следующая структура для сериализации
@JsonTypeName("DS")
public class Elemencik implements IC {
private String item;
public String getItem() {
return item;
}
public void setItem(String item) {
this.item = item;
}
public Elemencik() {
}
}
@JsonTypeInfo(use= JsonTypeInfo.Id.NAME, include= JsonTypeInfo.As.PROPERTY, property="type")
@JsonSubTypes({
@JsonSubTypes.Type(Elemencik.class)
})
public interface IC {
}
Я использую ObjectMapper для сериализации экземпляра класса Elemencik.
ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationConfig.Feature.USE_ANNOTATIONS, true);
IC mm = new Elemencik();
String res = mapper.writeValueAsString(mm);
После сериализации я вижу, что преобразователь обрабатывает информацию о типе, включенном в аннотацию @JsonTypeName("DS"). Итак, окончательный json не имеет типа поля. Это мой pom.xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.11.1</version>
</dependency>
В чем может быть проблема?