Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/03/2011, 10:25
jruano30
 
Fecha de Ingreso: septiembre-2008
Mensajes: 2
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Respuesta: Controlar descarga de archivos con Jsp y Java

Cita:
Iniciado por NiceMan Ver Mensaje
Hola a todos, tengo una pagina web en jsp y tengo una pagina desde la cual, los usuarios pueden descargar archivos q tengo en el servidor, lo estoy haciendo de la siguiente manera:
Código:
<%
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();
}  
%>
si intentas ejecutar este código lo que hara la aplicación es:
cuando le des click en el link de descarga de tu archivo se abre una pagina con este código y enseguida se abre una ventana de descargas con las opciones "Open", "Save", "Cancel". Si le das "Save" el archivo se guarda en el path que seleccione el usuario, si le das "Cancel" no lo desacarga y si le das "Open" trata de abrir el contenido del archivo en el browser.

este código funciona muy bien, el problema q tengo es que necesito saber, cuando un usuario terminó de descargar un archivo exitosamente, es decir si el usuario termina de descargar el archivo, debo mostrar un mensaje en la pagina jsp q dice:
Código:
<td>La descarga fue completada con éxito</td>
y si cancela la descarga debo mostrar un mensaje que diga:
Código:
<td>La descarga fue cancelada</td>
cuando el programa llega a la parte (señalada anteriormente):
Código:
response.setHeader("Content-Disposition","attachment;filename="+nFile);
este muestra la ventana de descarga, pero no espera a saber q opcion elije el usuario (Open, Save, Cancel), si no q sigue ejecutando el codigo q esta abajo de esa linea.

Espero que alguien me pueda ayudar con este programa, o conozca alguna otra manera de saber si se descargó completamente un archivo, no se si exista otra manera de hacerlo con Javascript o algo asi,

Agradezco su gentil atención

ayuda. yo quero descargarme un archivo desde el servidor pero cuando pegue tu codigo lo que hace es descargarme el servlet o algo asi y me da un medio error ayuda