Java 招摇过市:如何为响应的嵌入元素指定oneOf属性?
假设我们有以下控制器方法:Java 招摇过市:如何为响应的嵌入元素指定oneOf属性?,java,swagger,swagger-ui,Java,Swagger,Swagger Ui,假设我们有以下控制器方法: @ApiResponses(value = {@ApiResponse(responseCode = "200")}) @GetMapping(value = "/animals", produces = MediaType.APPLICATION_JSON_VALUE) @ResponseStatus(HttpStatus.OK) public Flux<AnimalResponse> getAnimals() {
@ApiResponses(value = {@ApiResponse(responseCode = "200")})
@GetMapping(value = "/animals", produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseStatus(HttpStatus.OK)
public Flux<AnimalResponse> getAnimals() {
return Flux.just(new AnimalResponse(new Dog("animal", "dog")));
}
而Animal
类是抽象类:
abstract class Animal {
private String animal;
}
由两类扩展而成的Dog
和Cat
:
class Cat extends Animal {
private String cat;
}
class Dog extends Animal {
private String dog;
}
在默认的招摇过市配置下,它显示控制器响应只包含一个属于抽象类动物的字段动物,而没有关于其他可能字段的信息。
在我看来,我需要以某种方式将oneOf
Swagger属性指定给Animal
类,但我不知道如何正确执行,因为通常oneOf
属性是为响应对象定义的,而不是为嵌入元素定义的。
那么,你能给我一些建议吗
class Cat extends Animal {
private String cat;
}
class Dog extends Animal {
private String dog;
}