У меня есть класс, который аннотирован @ApiModel.Он содержит свойство, являющееся интерфейсом, а также с аннотированной реализацией @ApiModel находится в другом банке.
Пример:
@ApiModel(description = "Container Object")
public class ContainerObject {
@ApiModelProperty(value = "generic field")
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.EXTERNAL_PROPERTY, property = "type")
private CustomData customData;
}
Пользовательские данные - это пустое Pojo.Его реализация выглядит следующим образом:
@ApiModel
public class CustomDataX extends CustomData {
@ApiModelProperty(value = "this is my super attribute")
private String myAttribute;
}
Теперь моя конфигурация Swagger выглядит следующим образом:
@Startup
@ApplicationPath("/api")
public class JaxRsActivator extends Application {
public JaxRsActivator() {
super();
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0.0");
beanConfig.setSchemes(new String[] { "http" });
beanConfig.setBasePath("/api");
beanConfig.setResourcePackage("ag.company.x");
beanConfig.setScan(true);
}
}
К сожалению, CustomDataX не отображается в сгенерированном jag-образе Swagger.Я использую swagger-jaxrs версии 1.5.22.
Знаете ли вы, как решить эту проблему?
Редактировать: я уже добавил указанную зависимость к аннотациям swagger, как описанов этот стековый пост .Не работал.
С уважением, Рокко