flushBuffer() не работает

Я использую встроенный сервер Jetty (Jetty 8). Я хотел сделать потоковое приложение HTTP. Таким образом, мне приходится сбрасывать мой писатель каждые несколько секунд (сервлет будет продолжать работать).

Проблема в том, что ни response.flushBuffer(), ни response.getWriter.flush() не записывают вывод в ответ. (Хотя response.isCommitted() возвращает true) Вывод виден только после возврата сервлета.

Это потому, что Jetty не поддерживает потоковую передачу? Или мне нужно внести некоторые изменения в конфигурацию Jetty?


person user1523170    schedule 15.03.2013    source источник
comment
Фильтры сервлетов также могут выполнять собственную буферизацию. Например, сжатие gzip или улучшение HTML в качестве фильтра.   -  person Joop Eggen    schedule 15.03.2013
comment
Спасибо! это была проблема :)   -  person user1523170    schedule 15.03.2013
comment
@JoopEggen, вы должны переместить это в ответ   -  person jesse mcconnell    schedule 16.03.2013
comment
Какой фильтр gzip вы использовали? как они должны также уважать flushBuffer?   -  person gregw    schedule 16.03.2013
comment
Я считаю, что это конфигурация сервера приложений. Пожалуйста, смотрите мой пост.   -  person Igor Veloso    schedule 18.04.2017


Ответы (1)


Фильтры сервлетов также могут выполнять собственную буферизацию. Например, сжатие gzip или улучшение HTML в качестве фильтра.

person Joop Eggen    schedule 16.03.2013