Документирование возможных значений для карты в Swagger - PullRequest
0 голосов
/ 24 июня 2019

У меня есть метод JAX-RS, который использует карту для облегчения частичного обновления.

   @POST
   @Consumes(MediaType.APPLICATION_JSON)
   @Produces(MediaType.APPLICATION_JSON)
   @Path("/{id}/edit")
   public Response edit(HashMap<String, Object> data)

Я не могу использовать патч, длинная история.Мне нужно задокументировать, какие параметры возможны для отправки клиентом, чтобы они могли видеть их в пользовательском интерфейсе swagger.Один из способов сделать это - использовать @ApiImplicitParam

@ApiImplicitParams({
    @ApiImplicitParam(name = "payload", value = "payload", required = true, dataType = "com.me.PartialUpdatePerson", paramType = "body"),
})

. Это хорошая работа.PartialUpdatePerson - это класс, который содержит различные параметры, разрешенные для отправки.

Проблема в чванливом интерфейсе, он все еще показывает мне тело с картой.Пример значения:

{
  "additionalProp1": {},
  "additionalProp2": {},
  "additionalProp3": {}
}

, а также полезная нагрузка.

Есть ли вообще, я могу сказать чванство, не показывать это?т.е. игнорировать данные HashMap с точки зрения документа?Я не использую Spring, поэтому @ApiIgnore невозможен.

Спасибо

1 Ответ

0 голосов
/ 24 июня 2019
public Response edit(@ApiParam(hidden = true) HashMap<String, Object> data)
...