Как правило, для того, чтобы запрос не был разбит на части, вам нужно указать точный размер тела сообщения, что для динамически генерируемых данных означает, что вам нужно буферизовать весь ответ в памяти, посмотреть его размер и только затем отправить его.
Документация клиента Apache, кажется, подтверждает это: AbstractHttpEntity.setChunked()
состояния
Обратите внимание, что параметр chunked является только подсказкой.При использовании HTTP / 1.0 разбиение на части никогда не выполняется.В противном случае, даже если chunked имеет значение false, HttpClient должен использовать кодирование чанка, если длина содержимого сущности неизвестна (-1).