Swagger, один JAX-RS с разными путями возвращает разные тела ответа - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть два типа конечных точек JAX-RS, один с фиксированным входом / выходом и один на основе единой службы JAX-RS, возвращающей разные структуры вывода. Первый - простой, используйте аннотации и сканеры ресурсов ядра Swagger. Для второго типа представьте себе базу данных, и конечная точка возвращает данные из разных таблиц, при этом json соответствует структуре таблицы. {table1: [{id: 1, имя: "Fritz", ...

@GET
@Path("/tables/{schema}/{name}")
@Produces(MediaType.APPLICATION_JSON)
public Response getTableData(@PathParam("schema") String schema, @PathParam("name") String name) {
    ObjectMapper objectMapper = new ObjectMapper(); // Jackson
    ObjectNode rootnode = objectMapper.createObjectNode();
    // add rows and columns...
    return Response.ok(rootnode).build();

Итак, один сервис, разные JSON возвращаемые структуры.

Что я хотел бы сделать возвращает одно конкретное определение чванства на таблицу базы данных. Вместо того, чтобы возвращать одну конечную точку сваггера для / таблиц с двумя обязательными параметрами, я бы хотел, чтобы сваггер показал 100 конечных точек в виде / table / USER / TABLE1, / table / USER / TABLE2, ... et c.

У кого-нибудь есть подсказки для меня, как сделать это эффективно?

В настоящий момент я даже не знаю, как добавить конечную точку вручную, используя Java методы, когда основой является swagger-core.

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...