assim
eu tenho um sistema de upload que envia os arquivos para uma pasta
por exemplo
/mnt/files
essa pasta não é publica nao pode ser acessada pelo navegador
eu precisaria de um sistema que copiasse o arquivo desta pasta e enviasse para o navegador entende
so nao sei se funciona com arquivos grandes tipo 700mb
vou testar aqui
J
Jonhkr
ok galera nao precisa mais ja consegui
ta ai o codigo para quem precisar 8)
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
FileInputStreaminput=newFileInputStream("ARQUIVO A SER LIDO DO SERVER"); byte[]buffer=newbyte[1024]; // le o arquivo a cada 1kbServletOutputStreamout=response.getOutputStream();intread=0;while((read=input.read(buffer))!=-1){
out.write(buffer);out.flush();}
out.close();}
Olá galera. Continuando este tópico, fiz a implementação do código, só que ao fazer o download de arquivos maiores de 400MB, o heap da JVM estoura rapidamente. Estou realizando um trabalho em que é necessário fazer download de arquivos do servidor de até 2GB e não apenas até 400MB.
Alguém pode ajudar? Segue o código:
HttpServletResponseresponse=(HttpServletResponse)context.getResponse();response.setHeader("Content-Disposition","attachment;filename=\""+nomeDoArquivoGeradoParaDownload+"\"");response.setContentLength((int)filez.length());response.setContentType("application/download");try{FileInputStreamfis=newFileInputStream(filez);ServletOutputStreamout=response.getOutputStream();FileInputStreamin=newFileInputStream(filez);byte[]buffer=newbyte[1024];intread=0;while((read=in.read(buffer))!=-1){out.write(buffer);out.flush();}out.close();}catch(IOExceptione){System.out.print("Erro no envio do arquivo");e.printStackTrace();}