Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Indo além do ensinado.

Estou com um problema e preciso de ajuda, preciso listar todos os arquivos de um diretório e deixar os arquivo como links para download, para que eu mesmo consiga baixar os arquivos. Bom consegui até listar porém quando eu clico não consigo navegar entres os diretórios nem baixar os arquivos, recebo o erro abaixo, me perdoem as "gambiarras" mas nunca precisei fazer isto e estou mega curioso rsrs.

HTTP Status 404 – Não Encontrado
Type Status Report

Message /gerenciador/livro-sistemas-operacionais-com-java.pdf

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

Apache Tomcat/9.0.34

Abaixo segue a minha ServLet:


package br.com.alura.gerenciador.servlet;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/listaArquivos")
public class ListaArquivos extends HttpServlet {


    File file = new File("C:\\Users\\Renato\\Desktop\\CURSOS");
    File[] arquivos = file.listFiles();

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {



        PrintWriter out = response.getWriter();

        out.println("<html><body>");
        out.println("<ul>");

        for (File file2 : arquivos) {
            out.println("<li>");
            out.println("<a href=");
            out.println(file2.getName());
            out.println("/>");
            out.println(file2.getName());
            out.println("</li>");
        }

        out.println("</ul>");
        out.println("</body></html>");

    }

}