Obatis开源框架即将移除404错误请求处理类

原创     发表于 2020-08-24 12:08     阅读 216  

RestRequestNoHandlerFoundException 错误请求处理类用于Obatis开源框架 obatis-web子项目中用于404错误请求的拦截处理,包路径如下:

package com.obatis.config.response.result

实现原理为自定义 RestRequestNoHandlerFoundException 类,实现springboot项目中的 ErrorController类,重写error方法即可。Obatis开源框架在之前的引用中,考虑到springboot项目主要提供后端API服务,故在所有404错误请求时修改HttpServletResponse,具体代码如下:

response.setHeader("Content-type", "application/json;charset=UTF-8");

附上重写error方法,具体实现可以下载源码查看

@RequestMapping(value = "/error")
public Object error(HttpServletResponse response) {

response.setCharacterEncoding("UTF-8");
response.setHeader("Content-type", "application/json;charset=UTF-8");
response.setStatus(HttpStatus.SC_OK);

ResultResponse resultInfo = new ResultResponse();
resultInfo.setCode(org.apache.http.HttpStatus.SC_NOT_FOUND);
resultInfo.setMessage("HTTP请求URL地址不正确");
resultInfo.setErrorCode(ResponseDefaultErrorCode.URL_NOT_FOUND_ERROR_CODE);
try {
response.getWriter().write(JsonCommonConvert.objConvertJson(resultInfo));
} catch (IOException e) {
e.printStackTrace();
}
return null;
}


为了方便广大开发者,obatis-web 计划在 2.2.0-release 版本发布时移除该类,项目配置404错误请求时,可以参考上面的error方法。


参与项目:

欢迎您参与Obatis项目的开发,如果有问题或者建议,欢迎直接提出Issue意见或者发送邮件至service@obatis.com,期待您的参与……
也可以加入QQ群:250577580,一起和其他人讨论、分享使用心得。更多内容尽在Obatis