当前位置: 首页 > 知识库问答 >
问题:

覆盖句柄NoHandlerFoundException

艾凌龙
2023-03-14

我想在调用不存在的路由时覆盖Spring Boot默认结果:

{
    "timestamp": "2022-03-20T17:01:07.453+00:00",
    "status": 404,
    "error": "Not Found",
    "path": "/api/v1/not-found"
}

我有一个ControlllerAdvisor

@ControllerAdvice
public class ControllerAdvisor extends ResponseEntityExceptionHandler {
  @Override
  protected ResponseEntity<Object> handleNoHandlerFoundException(NoHandlerFoundException ex, HttpHeaders headers, HttpStatus status, WebRequest request) {
      return ResponseEntity.badRequest().body(new ErrorResponse("path not found"));
  }
}

它适用于其他自定义异常。

我还在 application.properties 上添加(或删除了)此属性,但没有任何变化:

spring.mvc.throw异常是否为空

Spring引导启动器父级是v.2.6.4

共有1个答案

弓华茂
2023-03-14

在application.properties中添加以下属性:

spring.web.resources.add-mappings=false
 类似资料:
  • 语句覆盖是广泛使用的软件测试之一。它来自白盒测试。 语句覆盖技术用于设计白盒测试用例。该技术涉及至少执行一次源代码的所有语句。它用于计算源代码中源代码中执行的语句总数。 语句覆盖在白盒测试过程中得出测试用例的场景,该过程基于代码的结构。 在白盒测试中,测试人员的专注点是内部源代码和流程图或代码流程图的工作。 通常,在内部源代码中,有各种各样的元素,如运算符,方法,数组,循环,控制语句,异常处理程序

  • 在书写代码与阅读代码的时候,经常会看到这一句代码: typedef void *HANDLE ,它是何方神圣呢?如何理解呢? 不理解它的时候,感觉它很神奇,知道它以后,它就是个typedef的定义,只不过是void*类型罢了,也就是HANDLE等价于void *,我们可以叫它披着句柄皮的指针(PS:指针和句柄是有区别的,在这说句废话); 对于void* 神通广大,因为它作为函数参数or函数返回值,

  • 当你用作图命令时,MATLAB用多种图形对象创建图形,例如线,文本,表面(完整列表见Graphics Objects)。所有图形对象都有控制其性能的属性。你可以在MATLAB中询问每种属性的取值并设置大部分的属性值。 每当MATLAB创建一个图形对象时,它就给该对象赋以一个标识符(称为句柄)。可以用此句柄访问对象属性。若你想作下列操作,句柄图形很有用。 修改图形外观。 通过编写能直接创建和操作对象

  • 问题内容: 我正在尝试自己学习编程,但仍在尝试掌握它。我收到以下错误: java.io.IOException:句柄无效 这是我的代码 我相信,每当我调用该方法时,都会出现错误,当我尝试显示默认构造函数中的字节数时,它可以很好地工作并显示。 问题答案: 好了,在实际开始使用它之前,请先关闭构造函数的块。将结束部分从构造函数中移到完成后将被调用的位置,例如在main 下方调用或单独的close方法。

  • 你可以创建任何MATLAB函数的句柄,然后用这些句柄作为函数链接的途径。函数句柄主要用来传递自变量列表给其他函数,用句柄执行函数或求值。 在MATLAB中,通过在函数名前加上符号@构造函数句柄。下面例子为SIN函数创建一个函数句柄,然后赋值给变量fhandle: fhandle = @sin; 用MATLAB的fevel函数对函数句柄求值。下面的plot_fhandle函数接收一个函数句柄和数据

  • 我使用Spring boot 1.5.7 我还没有配置CommonMultipartResolver,因为Spring Boot已经处理了文件上传。 如果我的上载超过允许的最大大小,则会抛出一个丑陋的异常。 这由我的控制器处理。 这种处理不仅复杂,而且很遗憾是特定于Tomcat的,因为SizeLimitExceededException位于包。 我如何处理这种错误情况,即无论使用哪个Servlet