|
|
|
Проблема с передачей файла клиенту из JSP
|
|||
|---|---|---|---|
|
#18+
создаю поток ByteArrayOutputStream, который содержит файл Excel на основе POI. пытаюсь передать файл клиенту с помощью сервлета: <%@ page session="true" contentType="text/html; charset=windows-1251" %> <%@ page import="mylib.excel.report.OutToExcel" %> <%@ page import="java.util.*" %> <html> <head> отчет в Excel </head> <body bgcolor="#FFFFFF"> отчет в Excel <% OutToExcel excelBean = (OutToExcel)session.getAttribute("excelBean");// try { response.setContentLength((int) excelBean.getExcel().size()); response.setContentType( "application/vnd.ms-excel; charset=windows-1251"); response.setHeader("Content-disposition", "attachment; filename=report.xls"); ServletOutputStream out2 = response.getOutputStream(); out2.write(excelBean.getExcel().toByteArray(), 0, excelBean.getExcel().size()); out2.flush(); excelBean.clearOut(); } catch (Exception e) { System.out.println("error in URI" + e); } %> </body> </HTML> Сервер выдает следующую ошибку: java.lang.IllegalStateException: getOutputStream() has already been called for this response. Подозреваю что в сервлете много лишнего, но мои эксперименты пока не привели к успеху... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2006, 10:17 |
|
||
|
Проблема с передачей файла клиенту из JSP
|
|||
|---|---|---|---|
|
#18+
Самое время какую-нибудь книжку про сервлеты / JSP прочитать или нанять, кто понимает, что к чему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2006, 10:26 |
|
||
|
Проблема с передачей файла клиенту из JSP
|
|||
|---|---|---|---|
|
#18+
как человек, почти не знакомый с сервлетами и jsp, могу лишь сказать, что когда ваша jsp-страница преобразуется в сервлет, в ней вызов getOutputWriter() идет ранее, поэтому сервлет выкидывает исключение о том, что нельзя второй раз получать выходной поток. Я если честно, не понял, как вы так собирались смешать html с excel? Короче, как правится эта проблема? Создается сервлет, в котором размещен код того скриптлета с отправлением excel-файла. На этой странице дается ссылка на тот сервлет и клиент получает ваш excel-файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2006, 10:27 |
|
||
|
Проблема с передачей файла клиенту из JSP
|
|||
|---|---|---|---|
|
#18+
да, я пошел по простому варианту: ссылка получения отчета в Excel. Получается что при переходе по ней человек просто получает файл. 2 М.Голованов: с удовольствием прочту Ваши рекомендации по литературе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2006, 10:37 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=732&tid=2149489]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 428ms |

| 0 / 0 |
