开发者社区> 问答> 正文

springboot中的错误处理

springboot默认会用whitelabel来显示错误视图,可以实现ErrorController来自定义.

@Controller
public class ErrorHandleController implements ErrorController {

    @Override
    public String getErrorPath() {
        return "error";
    }

    @RequestMapping
    public String errorHandle() {
        return getErrorPath();
    }
}

自己定义了这么一个处理器,结果把css,js这里当错误给处理了,这么解决啊?

展开
收起
蛮大人123 2016-03-10 10:06:58 2453 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    你可以直接定义一个错误处理器,在service层抛出相关的自定义异常,然后在PersonalExceptionHandler进行相关的处理。

     @ControllerAdvice
       public class PersonalExceptionHandler {
        @ExceptionHandler(EntityNotFoundException.class)
        @ResponseStatus(HttpStatus.NOT_FOUND)
        @ResponseBody
        SimpleErrorMessage handleException(EntityNotFoundException exception){
            log.debug("Entity Not Found Exception {}",exception.getMessage());
            log.trace(exception.getMessage(),exception);
            return new SimpleErrorMessage("Entity not found","This resource was not found");
        }
        @ExceptionHandler({UsernameNotFoundException.class})
        @ResponseStatus(HttpStatus.UNAUTHORIZED)
        @ResponseBody
        SimpleErrorMessage handleException(UsernameNotFoundException exception){
            log.debug("Username not found {}",exception.getLocalizedMessage());
            log.trace(exception.getMessage(),exception);
            return new SimpleErrorMessage("Unaouthorized"," ");
        }
    }
    2019-07-17 18:56:57
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第15讲】:Spring Boot 2.0 API与Spring REST Docs实战 立即下载
Java Spring Boot开发实战系列课程【第7讲】:Spring Boot 2.0安全机制与MVC身份验证实战(Java面试题) 立即下载
陈曦:使用Spring.Initializr定制工程脚手架 立即下载