easyexcel icon indicating copy to clipboard operation
easyexcel copied to clipboard

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 yzhao66 opened this issue 1 year ago • 1 comments

版本

<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也解决不了

yzhao66 avatar Nov 07 '23 07:11 yzhao66