У меня есть веб-приложение, работающее на сервере Tomcat 6.0.29 и JDK 1.6.
Когда я отправляю ответ клиенту, Tomcat отправляет
Transfer-Encoding: chunked
в заголовках, когда размер ответа составляет > 8 КБ. Для ответов < 8 КБ, он отправляет
Content-Length :
Я понимаю, что Chunked encoding является предпочтительным способом обработки массовых ответов, однако наши клиенты не хотят менять свой код (поскольку он распространяется по всем серверам).
Как отключить кодировку Chunked в Tomcat?
Я могу отключить HTTP/1.1 в Tomcat и включить HTTP/1.0 (не знаю, как это сделать)
Я пробовал следующее без успеха:
-
В теге Connector в
server.xml
я установилbufferSize =" 65536"
Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" bufferSize="65536" socketBuffer="65536" redirectPort="8443" />
-
Использование NIOConnector в server.xml со следующей конфигурацией:
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" socket.directBuffer="false" socket.rxBufSize="25188" socket.txBufSize="43800" socket.appReadBufSize="32768" socket.appWriteBufSize="32768" socket.bufferPool="500" socket.bufferPoolSize="100000000" socket.processorCache="500" socket.keyCache="500" socket.eventCache="500" socket.tcpNoDelay="false" socket.soKeepAlive="true" socket.soTimeout="5000" redirectPort="8443" />