Я использую swagger-codegen для создания клиента отдыха, но у меня возникает проблема, служба, которую я использую, возвращает модель с наследованием, модель API выглядит так:
public class Person
{
private List<Book> books;
...
}
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "typeClass")
@JsonSubTypes({ @JsonSubTypes.Type(value = Magazine.class) })
public class Book
{
//some prop
}
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "typeClass")
public class Magazine extends Book
{
//some prop
}
Модель API снабжена аннотациями Джексона для работы с наследованием. API работает нормально. Когда я создаю клиент, клиентские модели не имеют аннотаций Джексона, поэтому, когда я использую сгенерированный клиент для использования API, он всегда десериализуется с использованием класса Book. Он не «видит» класс Magazine. Я думаю, это потому, что сгенерированная модель не имеет аннотаций Джексона для работы с наследованием.
Как настроить swagger-codegen для добавления аннотаций Джексона в модель.
Большое спасибо...
jackson
в дополнительные свойства. ПосмотритеadditionalProperties.put("jackson", "true");
в первой ссылке и разберитесь, как это получить - person moondaisy   schedule 19.01.2017