aaa光的影子
2022-05-07 14:43
采纳率: 0%
浏览 60
已结题

本地运行javaweb项目实现文件下载功能,前后端代码没问题,可是下载文件列表不显示

问题遇到的现象和发生背景

一个javaweb项目包,实现文件上传下载功能的时候,文件下载页面不显示下载列表,希望有人可以指点一下

问题相关代码,请勿粘贴截图
package cn.lut.se.forum.controller;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;

@WebServlet("/controller/DownServlet")
//把服务器端的文件按照流的形式传输给客户端
public class showdownServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        File file = new File(getServletContext().getRealPath("/uploadFiles"));//原来的上传路径作为现在的下载路径
        if (!file.exists()){
            return;
        }
        File[] fileList = file.listFiles();//获得下载路径下所有文件的下载路径集合
        req.setAttribute("fileList",fileList);
        req.getRequestDispatcher("/showinfo.jsp").forward(req,resp);//将fileList给前端页面
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doGet(req, resp);
    }
}
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2022/4/30
  Time: 0:37
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>下载文件</title>
</head>
<body>
<table>
    <tr>
        <th>文件名称</th>
        <th>下载课件</th>
    </tr>
    <c:forEach var="afile" items="${fileList}">
        <tr>
            <td>${afile.name}</td>
            <td><a href="downloadServlet?resPath=${afile.name}">下载</a></td>
        </tr>
    </c:forEach>
</table>
</body>
</html>
运行结果及报错内容

显示页面没有文件列表,

img

我的解答思路和尝试过的方法

感觉哪个路径有设置错误,自己试了好多也没有试出来

我想要达到的结果

img

正常应该显示文件列表,可是我的改了两天都死活不显示,是不是少了什么东西还是路径错误/(ㄒoㄒ)/~~
希望有goodman可以帮忙看一下,可以远程或者发项目包😭

3条回答 默认 最新

相关推荐 更多相似问题