Почему поля @XmlAttribute игнорируются Swagger 1.X? - PullRequest
0 голосов
/ 25 июня 2018

У меня есть простой класс модели, аннотированный с помощью аннотаций Swagger 1.X, Jackson и JAXB, например:

@XmlRootElement(name = "ClassA")
@ApiModel(value = "ClassA")
@XmlAccessorType(XmlAccessType.NONE)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ClassA
{
    @ApiModelProperty(value = "The attribute key", example = "a key")
    @XmlAttribute
    private String key;

    @ApiModelProperty(value = "The attribute name", example = "a name")
    @XmlAttribute
    private String name;

    @ApiModelProperty(value = "a value")
    @XmlElement
    private Object value;

    public String getKey()
    {
        return key;
    }

    public void setKey(String key)
    {
        this.key = key;
    }

    public String getName()
    {
        return name;
    }

    public void setName(String name)
    {
        this.name = name;
    }

    public Object getValue()
    {
        return value;
    }

    public void setValue(Object value)
    {
        this.value = value;
    }
}

Это обрабатывается CXF Swagger2Feature для создания сваггера.Документ JSON, который представлен через Swagger-UI.CXF версии 3.2.1, которая, кажется, использует Swagger 1.5.16.

. В сгенерированном документе swagger.json поля, аннотированные @XmlAttribute, игнорируются (включено только поле значения, аннотированное @ XmlElement).).Есть ли способ заставить Swagger включить их в сгенерированную спецификацию, кроме как заменить их все на элементы XML?

1 Ответ

0 голосов
/ 26 июня 2018

Видимо, это ошибка в версии Swagger (1.5.16), используемой в CXF 3.2.1 - Swagger Core 1847 . Ошибка была исправлена ​​в Swagger Core 1.5.18 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...