Ventana de descarga
Buen dia;
Señores tengo algun tiempo tratando de adentrarme a la descarga de archivos que manejo en el servidor, estuve tratando con el framework de icefaces pero ni siquiera el objeto me aparece, en fin eh googleado con jsp y encuentro al final del dai este tipo de codigos pero no me aparese el menu de descarga, el cod encontrado es:
String nFile = "Inventario del la linea 402.pdf";
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();
}
Eh estado intentando de muchas maneras pero nose como que ni siquiera puedo sacar la vendita ventana de descarga que con el codigo que mostre seria solo:
response.setHeader("Content-Disposition","attachment;filename="+nFile);
En todos los foros o temas que encuentro comentan que eso e slo necesario para mandar llamar a la ventana pero no puedo, podran ayudarme
Miguel V.
Chihuahua.
- Inicie sesión o regístrese para enviar comentarios
En tú código html tienes una
En tú código html tienes una liga que manda invocar a este Servlet o a ese código en JSP? o de que manera estás invocando a esta funcionalidad del servidor?
Completa tu codigo
Despueds de
response.setHeader("Content-Disposition","attachment;filename="+nFile);
agregaresponse.setContentLength(archivo.available());
Editado
Bueno, aqui hay un código completo
hola; Muchas gracias por
hola;
Muchas gracias por las respuestas, la verdad no eh encontrado ni como hacerlo en javascript ni encontre tutoriales de como hacerlo, aller estuve buscando en ingles pero llego a lo mismo.
Javadabadoo, dejame pruevo lo que me comentas y te respondo que paso, muchas gracias por la contrubucion.
Miguel V.
Chihuahua
hola; Javadabadoo fijate
hola;
Javadabadoo fijate que probe agregando a mi codigo lo que comentas, pero antes de llegar a la parte que agregaste ahora me salio el sig error.
at enlineatabla.sapitof(enlineatabla.java:408)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
at javax.faces.component.UICommand.broadcast(UICommand.java:300)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
at java.lang.Thread.run(Thread.java:619)
En la linea enlineatabla.java:408
Ya estuvbe googleando y al pareser no deve de marcar error pero ami sime marca :S, sabran que pasa ??
Miguel V.
Chihuahua.