Мне нужно передать массив объектов в качестве параметра в java Swagger UI. Я не могу этого сделать. Однако я могу легко передать массив строк в качестве параметров. Но Невозможно определить, как передать массив объектов, вложенных в другой класс или DTO. Я использую Java Spring и разрабатываю веб-сервис RESTful.Как передать массив объектов в качестве параметра в пользовательском интерфейсе Java swagger?
Ниже мой первый DTO, который передается как ModelAttribute в моем REST API в качестве параметра:
public class BusinessDetailsDTO {
private BusinessMembersDTO[] businessMembers;
public BusinessMembersDTO[] getBusinessMembers() {
return businessMembers;
}
public void setBusinessMembers(BusinessMembersDTO[] businessMembers) {
this.businessMembers = businessMembers;
}
}
Ниже второго DTO которого массив выполнен свойство в 1 DTO:
public class BusinessMembersDTO {
private String ownerRole;
private String businessLocation;
private Long memberId;
//getter setter below
}
Ниже приводится определение метода контроллера:
@ApiOperation(value = "Add business info")
@RequestMapping(method = RequestMethod.POST, value = "/addBusinessInfo", produces={"application/json"})
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Success", response = ResponseEntity.class),
@ApiResponse(code = 401, message = "Unauthorized"),
@ApiResponse(code = 403, message = "Forbidden"),
@ApiResponse(code = 404, message = "Not Found"),
@ApiResponse(code = 500, message = "Failure") })
public ResponseEntity<BusinessDetails> addBusinessInfo(@RequestParam(
@ModelAttribute BusinessDetailsDTO businessDetailsDTO) {
Моя проблема в том, что я не в состоянии выяснить, как следует передавать значения ownerRole
, которые присутствуют в BusinessMembersDTO
. Пользовательский интерфейс swagger показывает Array[]
в столбце DataType рядом с полем businessMembers
.
Справка Plz.
Will имея 'BusinessDetailsDTO' удерживайте список 'BusinessMembersDTO' (в отличие от массива' BusinessMembersDTO'), помогающий определить столбец DataType Swagger UI? – MrMister
Никогда не думал об этом. Хотя это выглядит многообещающе для меня. Попробует и вернется обратно с результатом. Спасибо –
Его все еще Не работает. добавил 'private List businessMembersDTO;' в 1-м DTO, но не повезло –