Создать пустое тело Json для HttpEntity - PullRequest
0 голосов
/ 23 октября 2018

Так что я не могу понять эту, казалось бы, самую простую проблему.Я хочу создать HttpEntity, где в заголовке есть приложение типа контента / json с телом, являющимся пустым объектом Json:

{}

Право, все, что у меня есть, это Джексон, однако независимо от того, что я создаю (пробовал JsonNodeFactory.instance.nullNode () и ObjectNode с нулевым объектом), это не может создать правильный пустой объект Json.Строка "{}" или null тоже не работает.Есть идеи?

Редактировать: ребята ... Извините, что потратил ваше время, оказалось, что API, которому я звонил, возвращал неверный неверный ответ на запрос (400) по неправильным причинам.Запрос был действительно правильным.Я просто приму первый правильный ответ

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

Простой способ - использовать ObjectMapper для создания пустого JSON ObjectNode, а затем сериализовать его:

ObjectMapper mapper = new ObjectMapper();
ObjectNode obj = mapper.createObjectNode();

String s = mapper.writeValueAsString(obj);  // yields "{}"

Нет необходимости в mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);

0 голосов
/ 23 октября 2018

Может быть так:

/**
 * Produce an empty HttpEntity
 */
public HttpEntity<String> getJsonEntityEmpty() {
    HttpEntity<String> entity = null;

    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON);

    String requestJson;
    requestJson = "{}";
    entity = new HttpEntity<String>(requestJson,headers);

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