Estou tentando implementar o download de um arquivo .jar usando um servlet.
O meu método doGet está assim:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("application/jar");
ServletContext ctx = getServletContext();
InputStream is = ctx.getResourceAsStream("/jon.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();
}
Acontece que quando tento acessar este servlet, aparece a janela para download mas o arquivo que é baixado é Download.do (o nome que mapeei para o servlet) e não o .jar que eu coloquei.
O que estou fazendo de errado?
E qual o lugar certo de colocar o arquivo que quero disponibilizar para download? Estou colocando dentro de Web Content no Eclipse... Me ajudem por favor