Необходимая помощь,Ошибка: IllegalStateException в Java. Не может быть отправлено после того, как ответ был получен
Я работаю для загрузки файла в Java Servlet и после того, как загрузка файла не может отправить запрос на страницу.
Файл успешно загружен и получает незаконноеStateException при попытке отправить запрос на страницу.
здесь код
public void fileDownload(String stringFileToDownload, HttpServletResponse response) throws Exception{
FileInputStream inStream = null;
OutputStream outStream = null;
try{
File downloadFile = new File(stringFileToDownload); //Reads input file
inStream = new FileInputStream(downloadFile);
response.setContentType("application/zip-compressed"); //MIME type of the file
response.setContentLength((int) downloadFile.length());
response.setHeader("Content-Disposition", "attachment; filename=Time.zip");
//response's output stream
outStream = response.getOutputStream();
byte[] buffer = new byte[4096];
int bytesRead = -1;
while ((bytesRead = inStream.read(buffer)) != -1) {
outStream.write(buffer, 0, bytesRead);
}
}
catch(Exception ex){
throw ex;
}
finally{
//response.flushBuffer();
try{
if(inStream != null){
inStream.close();
}
if(outStream != null){
//outStream.flush();
outStream.close();
}
}
catch(Exception ex){
throw ex;
}
}
}
Я назвал этот метод из сервлета; перенаправлять из сервлета на другую страницу
Телефонный код:
FileDownloadFromWeb fileDownloadFromWeb = new FileDownloadFromWeb();
fileDownloadFromWeb.fileDownload(stringarchiveFile, response); //Allow to download
Request Dispatcher objRequestDispatcher = request.getRequestDispatcher(objProperties.getProperty("SUCCESS_DOWNLOAD"));
objRequestDispatcher.forward(request, response);
Пожалуйста, сообщите код. –
Сообщение означает, что вы пытаетесь переадресовать, но раньше вы пишете какой-либо вывод, и это не допустимо, чтобы –
не выполнял никакой операции записи. вот код вызова 'FileDownloadFromWeb fileDownloadFromWeb = new FileDownloadFromWeb(); fileDownloadFromWeb.fileЗагрузить (stringarchiveFile, response); // Разрешить загрузку // Request Dispatcher objRequestDispatcher = request.getRequestDispatcher (objProperties.getProperty ("SUCCESS_DOWNLOAD")); objRequestDispatcher.forward (запрос, ответ); ' – Bhat