Я пытаюсь использовать Zip4j для создания zip-файла для загрузки. Но я всегда получаю ошибку:
2015-05-09 15:56:24.306 ОШИБКА 11748 --- [nio-8080-exec-4] oaccC[.[.[/].[dispatcherServlet] : Servlet.service() для сервлета [dispatcherServlet] в контексте с путь [] вызвал исключение [Ошибка обработки запроса; вложенным исключением является java.lang.IllegalStateException: getOutputStream() уже был вызван для этого ответа] с основной причиной
при вызове zout.putNextEntry(file, null); в функции ниже
public void EmployeeEncyrptedZipFileDownload(HttpServletResponse response, @RequestParam(value = "id", required = true) int employeeId) throws IOException, ZipException
{
//Prepare text file contents
String fileContent = "Hallo Welt";
response.setContentType("application/zip");
response.setHeader("Content-Disposition", "attachment;filename=test.zip");
final StringBuilder sb = new StringBuilder(fileContent);
final ZipOutputStream zout = new ZipOutputStream(response.getOutputStream());
File file = new File("mytext.txt");
zout.putNextEntry(file, null);
byte[] data = sb.toString().getBytes();
zout.write(data, 0, data.length);
zout.closeEntry();
zout.finish();
}
как это возможно, ведь функция putNextEntry получает даже не ответ, а уже полученный поток?