alibaba/easyexcel

Servlet.service() for servlet [dispatcherServlet] in context with path [/gdw-StoredEMS] threw exception [Could not find acceptable representation] with root cause org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation

Open

#3 547 ouverte le 7 nov. 2023

Voir sur GitHub
 (1 commentaire) (0 réactions) (0 assignés)Java (7 599 forks)batch import
help wanted

Métriques du dépôt

Stars
 (33 728 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

版本

<dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.6</version> </dependency>

异常代码

   private void writeExcel(HttpServletResponse response, String fileName, List<?> excelList) {
        //todo 优化
        //todo 解决异常
        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
        response.setCharacterEncoding("utf-8");

        try {
            fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
        } catch (UnsupportedEncodingException e) {
            log.info("【编码异常===== '{}'", e);
        }
        response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
        try {
            EasyExcel.write(response.getOutputStream(), BmsComparisonExcelReportDto.class).sheet("模板").doWrite(excelList);
        } catch (IOException e) {
            log.info("【写入excel失败】");
        }
    }

postman

image

报错

Servlet.service() for servlet [dispatcherServlet] in context with path [/gdw-StoredEMS] threw exception [Could not find acceptable representation] with root cause

org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation

#描述 postman设置了请求头 Accept为“application/vnd.openxmlformats-officedocument.spreadsheetml.sheet”,换高版本的easyexcel也解决不了

Guide contributeur