himorrivel 9 de ago. de 2012
Eu realmente não estou conseguindo, alguem pode me dar uma luz?
douglasmanteiga 14 de ago. de 2012
Ai parceiro tenta esse código…
Teh mais abraços!
protected void processRequest ( HttpServletRequest request , HttpServletResponse response )
throws ServletException , IOException {
try {
File arquivo = new File ( "C:\\Users\\Douglas Manteiga\\Documents\\aula08.pdf" );
response . setHeader ( "Content-Disposition" , "attachment; filename = " + arquivo . getName ());
response . setContentType ( "octet-stream" );
int BUFF_SIZE = 1024 ;
byte [] buffer = new byte [ BUFF_SIZE ] ;
response . setContentLength (( int ) arquivo . length ());
FileInputStream fis = new FileInputStream ( arquivo );
OutputStream os = response . getOutputStream ();
int byteCount = 0 ;
do {
byteCount = fis . read ( buffer );
if ( byteCount == - 1 ) {
break ;
}
os . write ( buffer , 0 , byteCount );
os . flush ();
} while ( true );
} finally {
}
}
CorreaThiago 5 de dez. de 2013
Olá douglasmanteiga.
Cara segui o seu código, mas meus parametros request, response vem nulos.
Na verdade segui outros tutoriais, mas acontece a mesma coisa. Sera que poderia me ajudar?
protected void processRequest ( HttpServletRequest request , HttpServletResponse response )
throws ServletException , IOException {
try {
File arquivo = new File ( "C:\\Users\\Douglas Manteiga\\Documents\\aula08.pdf" );
response . setHeader ( "Content-Disposition" , "attachment; filename = " + arquivo . getName ());
response . setContentType ( "octet-stream" );
int BUFF_SIZE = 1024 ;
byte [] buffer = new byte [ BUFF_SIZE ] ;
response . setContentLength (( int ) arquivo . length ());
FileInputStream fis = new FileInputStream ( arquivo );
OutputStream os = response . getOutputStream ();
int byteCount = 0 ;
do {
byteCount = fis . read ( buffer );
if ( byteCount == - 1 ) {
break ;
}
os . write ( buffer , 0 , byteCount );
os . flush ();
} while ( true );
} finally {
}
}
douglasmanteiga 5 de dez. de 2013
CorreaThiago:
Olá douglasmanteiga.
Cara segui o seu código, mas meus parametros request, response vem nulos.
Na verdade segui outros tutoriais, mas acontece a mesma coisa. Sera que poderia me ajudar?
protected void processRequest ( HttpServletRequest request , HttpServletResponse response )
throws ServletException , IOException {
try {
File arquivo = new File ( "C:\\Users\\Douglas Manteiga\\Documents\\aula08.pdf" );
response . setHeader ( "Content-Disposition" , "attachment; filename = " + arquivo . getName ());
response . setContentType ( "octet-stream" );
int BUFF_SIZE = 1024 ;
byte [] buffer = new byte [ BUFF_SIZE ] ;
response . setContentLength (( int ) arquivo . length ());
FileInputStream fis = new FileInputStream ( arquivo );
OutputStream os = response . getOutputStream ();
int byteCount = 0 ;
do {
byteCount = fis . read ( buffer );
if ( byteCount == - 1 ) {
break ;
}
os . write ( buffer , 0 , byteCount );
os . flush ();
} while ( true );
} finally {
}
}
Então cara testei o código aqui funcionou...
Vc está passando o caminho certo do arquivo para o método File arquivo = new File("C:\\SEU CAMINHO");
Caso sim, exclui a Servlet crie uma nova e joga o código no método processRequest da forma que está em cima...
Obs: Ao criar a nova não mecha nos método doGet e doPost!
Abrço!
CorreaThiago 9 de dez. de 2013
douglasmanteiga:
CorreaThiago:
Olá douglasmanteiga.
Cara segui o seu código, mas meus parametros request, response vem nulos.
Na verdade segui outros tutoriais, mas acontece a mesma coisa. Sera que poderia me ajudar?
protected void processRequest ( HttpServletRequest request , HttpServletResponse response )
throws ServletException , IOException {
try {
File arquivo = new File ( "C:\\Users\\Douglas Manteiga\\Documents\\aula08.pdf" );
response . setHeader ( "Content-Disposition" , "attachment; filename = " + arquivo . getName ());
response . setContentType ( "octet-stream" );
int BUFF_SIZE = 1024 ;
byte [] buffer = new byte [ BUFF_SIZE ] ;
response . setContentLength (( int ) arquivo . length ());
FileInputStream fis = new FileInputStream ( arquivo );
OutputStream os = response . getOutputStream ();
int byteCount = 0 ;
do {
byteCount = fis . read ( buffer );
if ( byteCount == - 1 ) {
break ;
}
os . write ( buffer , 0 , byteCount );
os . flush ();
} while ( true );
} finally {
}
}
Então cara testei o código aqui funcionou...
Vc está passando o caminho certo do arquivo para o método File arquivo = new File("C:\\SEU CAMINHO");
Caso sim, exclui a Servlet crie uma nova e joga o código no método processRequest da forma que está em cima...
Obs: Ao criar a nova não mecha nos método doGet e doPost!
Abrço!
[/quote]
Olá douglasmanteiga.
Fiz o que você me falou, mas nada ainda. Fiz assim.
Estou utilizando o framework Vraptor e tomcat7
Não sei o que fazer mais, já estou utilizando os jar's necessários, porem nada acontece.
[/quote]
protected void doGet4 ( HttpServletRequest request , HttpServletResponse response ) throws IOException {
try {
File file = new File ( "C:\\Users\\Samuel Alves\\Pictures\\upload\\download\\roots.jpg" );
response . setHeader ( "Content-Disposition" , "attachment; filename=" + file . getName ());
response . setContentType ( "octet-stream" );
int BUFF_SIZE = 1024 ;
byte [] buffer = new byte [ BUFF_SIZE ] ;
response . setContentLength (( int ) file . length ());
FileInputStream fis = new FileInputStream ( file );
OutputStream os = response . getOutputStream ();
int byteCount = 0 ;
do {
byteCount = fis . read ( buffer );
if ( byteCount == - 1 ) {
break ;
}
os . write ( buffer , 0 , byteCount );
os . flush ();
} while ( true );
} finally {
}
< form action = "<c:url value=" / download / downloadArquivo "/>" enctype = "multipart/form-data" method = "POST" >
< fieldset >
< legend > Download </ legend >
< input type = "file" id = "arquivo" name = "arq" />< br />
< button type = "submit" > Download </ button >
< br />
</ fieldset >
</ form >