Подтвердить что ты не робот

Сообщение пустого тела с клиентом Джерси 2

Как отправить запрос на отправку с пустым телом с клиентом Jersey 2?

final MyClass result = ClientBuilder.newClient()
    .target("http://localhost:8080")
    .path("path")
    .queryParam("key", "value")
    .request(APPLICATION_JSON)
    .post(What to fill in here if the body should be left empty??, MyClass.class);

Обновление::

final MyClass result = ClientBuilder
    .newBuilder().register(JacksonFeature).build()
    .target("http://localhost:8080")
    .path("path")
    .queryParam("key", "value")
    .request(APPLICATION_JSON)
    .post(null, MyClass.class);
4b9b3361

Ответ 1

Я не могу найти это в документе в любом месте, но я считаю, что вы можете использовать null для получения пустого тела:

final MyClass result = ClientBuilder.newClient()
    .target("http://localhost:8080")
    .path("path")
    .queryParam("key", "value")
    .request(APPLICATION_JSON)
    .post(Entity.json(null), MyClass.class)

Ответ 2

Я не знаю, изменилась ли версия. Но следующее не работает:

builder.put( Entity.json( null ) );

Где работает следующее:

builder.put( Entity.json( "" ) );

Ответ 3

Я обнаружил, что это сработало для меня:

Response r = client
    .target(url)
    .path(path)
    .queryParam(name, value)
    .request()
    .put(Entity.json(""));

Передайте пустую строку, а не нулевое значение.

Ответ 4

Просто отправьте пустой txt.

   .post(Entity.text(""));