Eric Cute 33 Posting Whiz in Training

Hello Everyone,

Im needing a bit of help here.

First, Im trying to let client download a file from server and save it on client's pc.

When client clicks on button "DOWNLOAD", it will call a servlet that will download the file.

Expected outcome is that a SAVE AS DIALOG BOX will pop up so that client can choose output destination folder.

This is my CODE

path = getServletContext().getRealPath("/")+ "files/";
		String filename = path + "users.txt";
		String disHeader = "Attachment;Filename=\"users.txt\"";
		File fileToDownload = new File(filename);
		FileInputStream fis = new FileInputStream(fileToDownload);
		try {
			ServletOutputStream fos = response.getOutputStream();
			System.out.println("after ng get output stream");
			int i;
			while ((i = != -1) {
		catch (Exception e) {
		System.out.println("ntapos ang whikle");
		infoMsg = "* Files were copied to C:/Temp/Backup/";
		request.setAttribute("infoMsg", infoMsg);
		destinationPage = "/erf_home.jsp";
		dispatcher = getServletContext().getRequestDispatcher(destinationPage);
		System.out.println("dispatcher nkuha");
		dispatcher.forward(request, response);

What happens is that I get IllegalStateException because I use the getOutputStream and the issue a forward request.

If I comment

dispatcher.forward(request, response);

All works well but the page is not redirected to the next page.

If I use


save dialog box does not appear.

I know that the code is in error.

Can you please give suggestions on what i can do so that save dalog box will appear and after download page will be redirected to another page (HOME PAGE)

Thanks for all your help.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.