美文网首页
解决Spring MVC no handler抛出异常

解决Spring MVC no handler抛出异常

作者: Joker__k | 来源:发表于2018-09-26 19:24 被阅读0次

    现如今每一个网站都会有自己的404页面,但是作为一个纯后端的应用,肯定是没有静态资源的,这辈子也不可能会有静态资源

    对于Spring MVC它有自己的一套404返回,例如这样

    {
        "timestamp": "2018-09-26T17:03:41.161+0800",
        "status": 404,
        "error": "Not Found",
        "message": "No message available",
        "path": "/process-instance/overview1"
    }
    

    但是肯定不是我们所希望的

    如果使用的是Spring Boot,可以在application.properties中设置

    spring.mvc.throw-exception-if-no-handler-found=true
    

    该参数对应的就是DispatcherServlet中的throwExceptionIfNoHandlerFound

    再在全局异常处理中利用@ExceptionHandler捕获NoHandlerFoundException就可以了

    但是并没有生效,原因是Spring会默认给你加上ResourceHttpRequestHandler这个handler,也就不会出现noHandler的情况了,该handler是用来处理资源使用的

    spring.resources.add-mappings=false
    

    如上配置就可以了

    相关文章

      网友评论

          本文标题:解决Spring MVC no handler抛出异常

          本文链接:https://www.haomeiwen.com/subject/xipjoftx.html