“ERROR“ dispatch for GET “/error“ 错误解决

背景描述

写了一个demo接口,使用postman请求时报错。

@RequestMapping("/hello")
    public String helloworld(){
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        String format = sdf.format(new Date());
        return "Hello Qiu Yihang ! 现在的时间是:".concat(format);
    }

报错信息:

[2021-07-17 23:29:02] [http-nio-80-exec-5] DEBUG servlet.DispatcherServlet:1127: Exiting from "ERROR" dispatch, status 404
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG servlet.DispatcherServlet:91: GET "/test/hello", parameters={}
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG handler.SimpleUrlHandlerMapping:522: Mapped to ResourceHttpRequestHandler [Classpath [META-INF/resources/], Classpath [resources/], Classpath [static/], Classpath [public/], ServletContext [/]]
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG support.OpenEntityManagerInViewInterceptor:86: Opening JPA EntityManager in OpenEntityManagerInViewInterceptor
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG resource.ResourceHttpRequestHandler:525: Resource not found
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG support.OpenEntityManagerInViewInterceptor:111: Closing JPA EntityManager in OpenEntityManagerInViewInterceptor
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG servlet.DispatcherServlet:1131: Completed 404 NOT_FOUND
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG servlet.DispatcherServlet:91: "ERROR" dispatch for GET "/error", parameters={}
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG annotation.RequestMappingHandlerMapping:522: Mapped to org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#errorHtml(HttpServletRequest, HttpServletResponse)
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG support.OpenEntityManagerInViewInterceptor:86: Opening JPA EntityManager in OpenEntityManagerInViewInterceptor
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG view.ContentNegotiatingViewResolver:349: Selected 'text/html' given [text/html, text/html;q=0.8]
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG support.OpenEntityManagerInViewInterceptor:111: Closing JPA EntityManager in OpenEntityManagerInViewInterceptor
[2021-07-17 23:29:37] [http-nio-80-exec-7] DEBUG servlet.DispatcherServlet:1127: Exiting from "ERROR" dispatch, status 404

解决:

把@ComponentScan注解去掉即可

@SpringBootApplication
@EnableJpaRepositories
@EnableCaching
//@ComponentScan(value = "ltd.hunter.justice.league.shopping.config")
public class JusticeLeagueShoppingApplication implements WebMvcConfigurer {

    public static void main(String[] args) {
        SpringApplication.run(JusticeLeagueShoppingApplication.class, args);
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new PerformanceInterceptor())
                .addPathPatterns("/coffee/**").addPathPatterns("/order/**");
    }
}
  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 引用\[1\]中的代码是Spring框架中的DispatcherServlet类的doDispatch方法的一部分。在这个方法中,首先获取处理器,然后执行handle方法来处理请求。具体来说,mv = ha.handle(processedRequest, response, mappedHandler.getHandler())这一行代码是执行处理器的handle方法来处理请求。\[1\] 引用\[2\]中提到,当我们请求一个内部出错的请求或者请求的目标方法发生异常时,SpringBoot默认会将错误抛给底层的Servlet容器,然后Servlet容器会发送一个/error的请求给我们。所以,当我们看到DEBUG \[org.springframework.web.servlet.DispatcherServlet\] - "ERROR" dispatch for GET "/error", parameters={}这一行日志时,说明我们的请求发生了错误并被转发到了/error路径。\[2\] 引用\[3\]中的代码是一个普通的SpringBoot控制器类,其中定义了一个/error的请求处理方法。在这个方法中,模拟了一个异常的情况,即int i = 1 / 0;。当我们请求http://localhost:8080/test/error时,会触发这个方法,并抛出一个异常。这个异常会被SpringBoot捕获并处理,然后返回一个错误页面或错误信息给客户端。所以,当我们看到DEBUG \[org.springframework.web.servlet.DispatcherServlet\] - "ERROR" dispatch for GET "/error", parameters={}这一行日志时,说明我们的请求发生了错误并被转发到了/error路径。\[3\] #### 引用[.reference_title] - *1* [SpringMVC](https://blog.csdn.net/qq_34922830/article/details/127285483)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [SpringBoot - 异常处理原理](https://blog.csdn.net/qq_27062249/article/details/118316320)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值