Сервлет: Выходной файл с включением на стороне сервера, текстом и динамически созданным изображением - PullRequest
0 голосов
/ 23 ноября 2011

У меня есть сервлет, в котором я хочу выводить обычный текст, а также динамически создаваемые изображения.

Созданная веб-страница имеет верхний и нижний колонтитулы, включенные в

request.getRequestDispatcher("header.jsp").include(request, response);

.к ожиданию:

org.apache.jasper.JasperException: java.lang.IllegalStateException: getOutputStream() has already been called for this response

Могу ли я достичь этого?(Заголовок, текст, изображение, текст, нижний колонтитул)

1 Ответ

3 голосов
/ 23 ноября 2011

Изображение не должно передаваться в том же запросе, что и страница HTML: сгенерированный HTML должен быть:

header
text
<img src="path/to/servlet/streaming/the/image/bytes"/>
text
footer

При загрузке этой HTML-страницы браузер вызывает второй запрос на path/to/servlet/streaming/the/image/bytes, и сервлет, сопоставленный с этим путем, должен использовать поток вывода ответа для отправки динамически генерируемых байтов изображения.

...