descargar archivos
Hola a todos.....quisiera saber como hago para permitir descargar archivos que no son .zip desde una p谩gina, lo que sucede es que en la aplicaci贸n un usuario solicita generar unos archivos sobre informaci贸n almacenada en la base de datos y luego debe poder descargarlos a su equipo, el generarlos no es problema el problema es como le permito descaergarlos si con hipervinculos lo que hace es que los abre en la p谩gina cosa que yo se no sucede con los .zip...........por fa\' ayudenme, me urge encontrar la soluci贸n
Para logra eso utiliza un codigo como este en el JSP, este no deve devolver nada mas:
FileInputStream archivo = new FileInputStream(Pathdelarchivo);
int longitud = archivo.available()
byte[] datos = new byte[longitud];
archivo.read(datos);
archivo.close();
response.setContentType("application/octet-stream"); // Aqui le dices que lo que viene es un OctectStream para que no abra ninguna aplicaci贸n
response.setHeader("Content-Disposition","attachment;filename = pathdelarchivo,size=longitud"); //Verifica la sintaxis no lo recuerdo exactamente,estos son los datos que aparecen en el cuadro de dialogo de descarga de archivos en el browser
response.write(datos);
response.flush();
response.close();
puedes encontrar mas informacion en http://support.microsoft.com/default.aspx/kb/260519
FileInputStream archivo = new FileInputStream(Pathdelarchivo);
int longitud = archivo.available()
byte[] datos = new byte[longitud];
archivo.read(datos);
archivo.close();
response.setContentType("application/octet-stream"); // Aqui le dices que lo que viene es un OctectStream para que no abra ninguna aplicaci贸n
response.setHeader("Content-Disposition","attachment;filename = pathdelarchivo,size=longitud"); //Verifica la sintaxis no lo recuerdo exactamente,estos son los datos que aparecen en el cuadro de dialogo de descarga de archivos en el browser
response.write(datos);
response.flush();
response.close();
puedes encontrar mas informacion en http://support.microsoft.com/default.aspx/kb/260519
oye resulta que el response no tiene ninguno de estos metodos que mencionas y pues al correr el jsp me salen errores.
Yo intente con obtener un ServletOutputStream con: response.getServletOutputStream(); por que es que este si tiene los 3 metodos que mencionas, sin embargo tampoco funciono, porque el error entonces dice:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
response.write(datos);
response.flush();
response.close();
Por fa.....que debo hacer, ya no se me ocurre que.....ayudame
Yo intente con obtener un ServletOutputStream con: response.getServletOutputStream(); por que es que este si tiene los 3 metodos que mencionas, sin embargo tampoco funciono, porque el error entonces dice:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
response.write(datos);
response.flush();
response.close();
Por fa.....que debo hacer, ya no se me ocurre que.....ayudame
oye resulta que el response no tiene ninguno de estos metodos que mencionas:
response.write(datos);
response.flush();
response.close();
y pues al correr el jsp me salen errores.
Yo intente con obtener un ServletOutputStream con: response.getServletOutputStream(); por que es que este si tiene los 3 metodos que mencionas, sin embargo tampoco funciono, porque el error entonces dice:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
Por fa.....que debo hacer, ya no se me ocurre que.....ayudame
response.write(datos);
response.flush();
response.close();
y pues al correr el jsp me salen errores.
Yo intente con obtener un ServletOutputStream con: response.getServletOutputStream(); por que es que este si tiene los 3 metodos que mencionas, sin embargo tampoco funciono, porque el error entonces dice:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
Por fa.....que debo hacer, ya no se me ocurre que.....ayudame
