我使用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":"",
}
]
答案 0 :(得分:0)
输出看起来正确。有关更多详细信息,请查看Swagger存储库中的issue。
您可以尝试使用@ApiModelProperty
注释来操作模型属性的元数据,如下所示:
@XmlElement(name = "clip")
@ApiModelProperty(value = "clip_list")
@XmlElementWrapper(name = "clip_list")
public List<Clip> mClips = new ArrayList<Clip>();
有关@ApiModelProperty
API的详细信息,请查看javadocs。
答案 1 :(得分:0)
解决了这个问题。只需从swagger依赖项中排除以下依赖项。
import cv2
import numpy as np
from matplotlib import pyplot as plt
img = cv2.imread('image1.JPG',0)
edges = cv2.Canny(img,255,255)
plt.subplot(121),plt.imshow(img,cmap = 'gray')
plt.title('Original Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(edges,cmap = 'gray')
plt.title('Edge Image'), plt.xticks([]), plt.yticks([])
plt.show()
排除这些后,我能够得到注释。