Mensagem de arquivo concluido apos Servlet criar arquivo?

1 resposta
aorocha
Pessoal tenho um servlet que gerar um arquivo e ja manda para download, só que quero enciar uma mensagem de arquivo concluido após o termino da geração do arquivo. o codigo da geração do arquivo
public class DownloadsArquivos extends HttpServlet {
	
	public void init(ServletConfig config) throws ServletException {
		super.init(config);
	}

	protected void service(HttpServletRequest req, HttpServletResponse response)
		throws ServletException,
		IOException {
		

		ServletOutputStream out = null;
		out = response.getOutputStream();
		response.setContentType("application/octet-stream");
		response.addHeader("Content-Disposition", "attachment; filename=" + arquivo + ".txt");

		for(String linha: expArq.getImport(filtro)){
			out.write(linha.getBytes());
		}

		out.flush();
		out.close();
	}
	public void destroy() {
		// TODO Auto-generated method stub
		super.destroy();
	}
}

tentei fazer isto no fim do servlet

mensagen = "Arquivo concluido";
			
			//tentei este
			req.getRequestDispatcher("ok.action?mensagen=" + mensagen).forward(req, response);
			
			//depois este
			response.sendRedirect("ok.action?mensagen=" + mensagen);
			
			//e este tambem
			PrintWriter out1 = response.getWriter();
			out1.println(mensagen);
fim esta 3 tentativas mas nenhuma funcionou, alguem pode dar uma ideia?

1 Resposta

dudaskank

acho que vc deve criar mais 2 páginas/servlets… a primeira, saindo dessa que gera o arquivo, vc manda pra uma com a mensagem de concluído o arquivo e com um redirect para outra servlet, que esta sim vai começar a baixar o arquivo.

exemplo para redirect aqui: http://billstclair.com/html-redirect.html

Criado 23 de junho de 2006
Ultima resposta 23 de jun. de 2006
Respostas 1
Participantes 2