Я новичок в Spring MVC и пытаюсь понять, возможно ли это.Поэтому, если я выполняю один запрос, и этот запрос занимает около 1 минуты для обработки перед записью в OutputStream из объекта HttpServletResponse, то я делаю другой запрос, который занимает всего 15 секунд, и записывает в OutputStream.Каждый запрос разделяет один и тот же OutputStream?В настоящее время я получаю сообщение об ошибке, и думаю, что это потому, что второй запрос закрывает OutputStream.Это ошибка "java.net.SocketException: программное обеспечение вызвало прерывание соединения: ошибка записи в сокет"
private static final String APPLICATION_EXCEL = "application/vnd.ms-excel";
@RequestMapping(value = "/a", method = RequestMethod.GET, produces = APPLICATION_EXCEL)
public @ResponseBody
void downloadA(HttpServletResponse response) throws IOException {
response.setContentType(APPLICATION_EXCEL);
response.setHeader("Content-Disposition", "attachment; filename=" + "a.xlsx");
HSSFWorkbook workbook1 = new HSSFWorkbook();
//long task...
ServletOutputStream outputStream = response.getOutputStream();
workbook1.write(outputStream);
workbook1.close();
}
@RequestMapping(value = "/b", method = RequestMethod.GET, produces = APPLICATION_EXCEL)
public @ResponseBody
void downloadB(HttpServletResponse response) throws IOException {
response.setContentType(APPLICATION_EXCEL);
response.setHeader("Content-Disposition", "attachment; filename=" + "b.xlsx");
HSSFWorkbook workbook1 = new HSSFWorkbook();
ServletOutputStream outputStream = response.getOutputStream();
workbook1.write(outputStream);
workbook1.close();
}