public void writeError(HttpServletResponse response, String… errMsg) {
if (response == null) {
throw new ServiceException(“response must be not null”);
}
if (response.isCommitted()) {
LogUtil.error(log, “response 已提交响应 无法继续发送响应报文”, true);
return;
}
response.reset();
response.setContentType(“application/json”);
response.setCharacterEncoding(“utf-8”);
OutputStreamWriter writer = null;
R<Object> fail = R.fail(errMsg.length == 0 ? "下载模板失败! 请重试" : errMsg[0]);
try {
writer = new OutputStreamWriter(response.getOutputStream(), StandardCharsets.UTF_8);
writer.write(JSON.toJSONString(fail));
writer.flush();
} catch (IOException e) {
LogUtil.error(log, "获取response 输出流异常", e);
} finally {
if (writer != null) {
try {
writer.close();
} catch (IOException e) {
LogUtil.error(log, "response 输出流关闭失败", e);
}
}
}
}