Eu estou usando o plugin do Tomcat no Eclipse e peguei um exemplo de um livro para disponibilizar
download de arquivo, o que fiz foi o seguinte:
[code]protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(“application/jar”);
ServletContext ctx = getServletContext();
InputStream is = ctx.getResourceAsStream("/arquivo.jar");
int read = 0;
byte[] bytes = new byte[1024];
OutputStream os = response.getOutputStream();
while((read = is.read(bytes)) != -1){
os.write(bytes,0,read);
}
os.flush();
os.close();
}[/code]
O meu problema, acredito, está em que pasta devo colocar o ‘arquivo.jar’ ? Já tentei colocar no webapps do Server configurado
no Eclipse, no src do meu projeto,mas, nada funcionou.
Por favor, se alguém puder me ajudar. xD
Não sei se é esta realmente sua dúvida, mas se for apenas disponibilizar o arquivo para download, basta colocar o arquivo em uma pasta visivel e disponibilizar o link.
Ex.:
homeTomcat/suaAplicacao/arquivo.jar
Endereço do arquivo para que as pessoas possam baixar.
http://www.seudominio.com.br/suaAplicacao/arquivo.jar
ou seja, no html vai ficar:
Baixe aqui
O servlet serviria apenas para listar os arquivos.
Se não for isto, explique melhor sua dúvida.
pois é… o problema é que como eu tô executando o TomCat só pelo Eclipse a minha aplicação não
fica em C:/Arquivo de Programas/Apache/Tomcat 6.0, o que eu não tô sabendo é para onde que o
TomCat (utilizando pelo Eclipse) está referenciando…
É para o meu workspace do Eclipse?
No Eclipse eu não tenho certeza porque eu uso o Netbeans.
Mas pra você ter uma noção, no Netbeans o contexto da aplicação fica na pasta do projeto.
Mais especificamente em PastaDoProjeto/build/web
Para ter certeza, você pode entrar em C:\Arquivos de programas\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost
Lá vai ter o xml que indica o nome do seu contexto.
Ex.: O arquivo URLProjeto.xml em docBase=“D:\PastaDoProjeto\build\web” este é o caminho da aplicação.
Espero ter esclarecido.
Muito obrigado denilsontelaroli pela ajuda, descobri qual era o meu problema!
Eu não encontrava o contexto, mas agora configurei de acordo com a apostila da Caelum
e consegui… agora consigo disponibilizar arquivos para download normalmente.
O meu problema agora está nos arquivos .jar
Quando coloco este tipo de arquivo, no browser aparece uma janela para download mas,
o arquivo fica com o nome do meu Servlet e não do arquivo e fica sem a extensão “.jar”
Tem alguma forma de configurar o nome do arquivo?