我正在使用 Swagger 为基于 jax-rs 的 API 生成文档。在我的一个模型中,我具有以下属性:
@XmlElementWrapper(name = "clip_list")
@XmlElement(name = "clip")
public List<Clip> mClips = new ArrayList<Clip>();
但是在 UI 中生成的 JSON 模型如下:
"clip": [
{
"duration":"",
"url":"",
"thumb":"",
}
]
很明显,XmlElementWrapper 注释没有被解析。如何强制 Swagger 正确嵌套元素?
输出应该是这样的:
"clip_list": [
{
"duration":"",
"url":"",
"thumb":"",
}
]
最佳答案
输出看起来正确。欲了解更多详细信息,请查看此issue在 Swagger 存储库中。
您可以尝试使用@ApiModelProperty
注解来操作模型属性的元数据,如下所示:
@XmlElement(name = "clip")
@ApiModelProperty(value = "clip_list")
@XmlElementWrapper(name = "clip_list")
public List<Clip> mClips = new ArrayList<Clip>();
有关 @ApiModelProperty
的更多详细信息API,看看javadocs .
关于java - Swagger 不解析@XmlElementWrapper 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34993641/