Как установить обычное имя в Java RS json response для простого типа списка - PullRequest
0 голосов
/ 12 июня 2018

если сущность является просто списком tokenList, тогда эта строка

return Response.status(Response.Status.OK).entity(tokenList).build();

вернет

{"ArrayList": ["c2171488"]}

, если я изменю на

GenericEntity entity = new GenericEntity<List<String>>(tokenList) {}

Я получил

{"Список": ["c2171488"]}

все, что я хочуизменить имя в ответе JSON на «токен», чтобы оно выглядело как

{«токен»: [«c2171488»]}

IsЕсть простой способ сделать это?

Функция сущности ResponseBuilder имеет вариант с аннотацией, однако нет ни одного примера, который я могу найти.https://docs.oracle.com/javaee/7/api/javax/ws/rs/core/Response.ResponseBuilder.html#entity-java.lang.Object-java.lang.annotation.Annotation:A-

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

найдено решение

String results = objectMapper.writeValueAsString (Collections.singletonMap ("Token", tokenIdList));return Response.status (Response.Status.OK) .entity (результаты) .build ();

0 голосов
/ 12 июня 2018
return Response.status(Response.Status.OK)
       .entity(Collections.singletonMap("Token", tokenList).build()
...