Jersey 2.0 Content-Length не указан
m пытается отправить сообщение в веб-службу, для которой требуется установить заголовок Content-Length с помощью следующего кода:
// EDIT: added apache connector code
ClientConfig clientConfig = new ClientConfig();
ApacheConnector apache = new ApacheConnector(clientConfig);
// setup client to log requests and responses and their entities
client.register(new LoggingFilter(Logger.getLogger("com.example.app"), true));
Part part = new Part("123");
WebTarget target = client.target("https://api.thing.com/v1.0/thing/{thingId}");
Response jsonResponse = target.resolveTemplate("thingId", "abcdefg")
.request(MediaType.APPLICATION_JSON)
.header(HttpHeaders.AUTHORIZATION, "anauthcodehere")
.post(Entity.json(part));
Из заметок о выпускеhttps://java.net/jira/browse/JERSEY-1617 и документация Джерси 2.0https://jersey.java.net/documentation/latest/message-body-workers.html это означает, что Content-Length устанавливается автоматически. Тем не менее, я получаю код ответа 411 от сервера, указывающий, что Content-Length не присутствует в запросе.
Кто-нибудь знает лучший способ получить набор заголовков Content-Length?
установив регистратор, вы убедились, что заголовок Content-Length не генерируется в запросе.
Благодарю.