Я хотел бы использовать Swagger для предоставления API-документации для моего Spring Boot API. Мне удалось заставить Springfox 2.3.0 работать, и все работает, как и ожидалось, за исключением контроллеров, возвращающих ObjectNode. Swagger пытается преобразовать возвращенный класс (ObjectNode) в JSON-представление, и результат таков:
{
"array": true,
"bigDecimal": true,
"bigInteger": true,
"binary": true,
"boolean": true,
"containerNode": true,
"double": true,
"float": true,
"floatingPointNumber": true,
"int": true,
"integralNumber": true,
"long": true,
"missingNode": true,
"nodeType": "ARRAY",
"null": true,
"number": true,
"object": true,
"pojo": true,
"short": true,
"textual": true,
"valueNode": true
}
Теперь я знаю, что Swagger не может угадать, какие значения содержатся в JSON, который я создаю, но я хотел бы вручную добавить правильную ResponseModel в любой форме.
Контроллер выглядит примерно так:
@ApiOperation(value = "NAME", notes = "NOTES")
@RequestMapping(value = "", method = RequestMethod.GET, produces="application/json")
public ResponseEntity<ObjectNode> getComponentByIdentification(
@ApiParam(name="customerid", required=true, value="")
@RequestParam (required = true)
String customerId){
return new ResponseEntity<ObjectNode>(someService.getCustomer(customerId), HttpStatus.OK);
}
Есть ли способ предоставить Swagger собственный ResponseJSON, который показан в документации как схема модели?