我有两个模型Package和File。两者都是用@ApiModel注释的JPA实体。它们之间也存在ManyToMany关系。
虽然还有其他类引用Package和File。
我已经在@ApiModel批注中添加了一个值。
@ApiModel(value = "the package")
public class Package {
@ManyToMany(cascade = {
CascadeType.PERSIST,
CascadeType.MERGE
})
@JoinTable(
name = "file_package",
joinColumns = @JoinColumn(name = "file_id"),
inverseJoinColumns = @JoinColumn(name = "package_id")
)
@ApiModelProperty(name = "The list of files")
private List<File> files = new ArrayList<>();
}
在swagger ui(localhost:8080 / swagger-ui.html#/)中,Package模型出现3次,如下所示:
包装 配套_1 套餐_2 Package_3
奇怪的是,如果我创建一个使用Package或File的REST控制器,则会出现此错误:
java.lang.IllegalStateException:条件为空时模棱两可的模型。 在springfox.documentation.spring.web.scanners.ApiModelReader.checkCondition(ApiModelReader.java:655) 在springfox.documentation.spring.web.scanners.ApiModelReader.mergeConditions(ApiModelReader.java:537) 在springfox.documentation.spring.web.scanners.ApiModelReader.mergeModelBranch(ApiModelReader.java:236) 在springfox.documentation.spring.web.scanners.ApiModelReader.read(ApiModelReader.java:149) 在springfox.documentation.spring.web.scanners.ApiListingScanner.scan(ApiListingScanner.java:144)
答案 0 :(得分:0)
还是个未解决的问题
与弹簧数据静止有关。希望在下一版本中进行修复。
https://github.com/springfox/springfox/issues/3014?_pjax=%23js-repo-pjax-container