org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation
项目都是@ RestController 返回结果都是json
通过response 导出 xlsx 报错
@PostMapping(value = "/exportExcel") public ResultexportExcel(@RequestBody List bizNos, HttpServletResponse response) { service.exportExcel(query, response); return Results.success(); }
@PostMapping(value = "/exportExcel") public void exportExcel(@RequestBody ListbizNos, HttpServletResponse response) { service.exportExcel(query, response); }
l第一种 导出 设置如下配置
response.setContentType(“application/vnd.openxmlformats-officedocument.spreadsheetml.sheet”);
response.setContentType(“application/vnd.ms-excel”);
sprng mvc 报错Could not find acceptable representation
仔细分析了 如果通过response写出去话,不应该触发spring mvc HttpMediaTypeNotAcceptableException
最终定位了
org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor#writeWithMessageConverters(T, org.springframework.core.MethodParameter, org.springframework.http.server.ServletServerHttpRequest, org.springframework.http.server.ServletServerHttpResponse)
这个方法 发现 Spring MVC的 MediaType 不支持上述的 content Type .
最后明白了response 写出的时候, 不应该有返回值, 则不会触发上述方法的调用,同事写的代码不小心。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)