Programación en castellano
Inicio > Foros > Java (Servlets y JSP) > descargar archivos
-Foros de debate

Java (Servlets y JSP)
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

descargar archivos
Enviado por marypaz el día 23 de febrero de 2006

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

 
Re: descargar archivos
Enviado por geobasis el día 23 de febrero de 2006

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/26051...

 
No funciona
Enviado por marypaz el día 24 de febrero de 2006

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

 
Re: No funciona
Enviado por No funciona - corrección el día 24 de febrero de 2006

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


 
Tal vez te sirva esto
Enviado por aljuarizmi el día 2 de noviembre de 2007

Mira he encontrado algo de codigo, y como dices response no tiene esos metodos por eso te sale el error...ahi te va el codigo que encontre:

<%
try
{
String nFile = \"l2.txt\";
FileInputStream archivo = new FileInputStream(\"C:/\"+nFile);
int longitud = archivo.available();
byte[] datos = new byte[longitud];
archivo.read(datos);
archivo.close();

response.setContentType(\"application/octet-stream\");
response.setHeader(\"Content-Disposition\",\"attachment;filename=\"+nFile);

ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(datos);
ouputStream.flush();
ouputStream.close();

}
catch(Exception e)
{
e.printStackTrace();
}
%>

Saludos y respero que te haya sido de ayuda.

 





Tienda
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: musica mp3 | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | tienda virtual | gifs animados