springboot默认会用whitelabel来显示错误视图,可以实现ErrorController
来自定义.
@Controller
public class ErrorHandleController implements ErrorController {
@Override
public String getErrorPath() {
return "error";
}
@RequestMapping
public String errorHandle() {
return getErrorPath();
}
}
自己定义了这么一个处理器,结果把css,js这里当错误给处理了,这么解决啊?
你可以直接定义一个错误处理器,在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"," ");
}
}