zoukankan      html  css  js  c++  java
  • SpringMVC初始化之No mapping found for HTTP request with URI

    今天刚刚开始写springMVC的helloworld,按着视频一步一步操作,结果出现了以下问题

    二月 29, 2020 8:44:36 下午 org.springframework.web.servlet.PageNotFound noHandlerFound
    警告: No mapping found for HTTP request with URI [/SpringMVC_02/index.html] in DispatcherServlet with name 'springDispatcherServlet'

    细心排查,发现,仅仅是自己将默认的index.jsp(视频中写的是jsp文件)换成了index.html文件

    问题原因:处理*.jsp是tomcat做的事,所有项目的web.xml都是继承服务器的web.xml

    DefaultServlet是Tomcat处理静态资源的。

    除过jsp和servlet外剩下的都是静态资源:

    index.html:静态资源,Tomcat就会在服务器下找到这个资源并返回

    可以说是,我们的前端控制器的 / 覆盖了服务器中的DefaultServlet

    1)服务器的web.xml中有一个DefaultServlet是url-pattern=/

    2)我们配置中前端控制器url-patter=/

    静态资源会来到DispatcherServlet(前端控制器)看哪那个方法的RequestMapping是这个index.html

    3)为什么jsp又能访问;是因为我们没有覆盖服务器中的JspServlet的配置

    4)/* 直接就是拦截所有请求

    解决办法:在web.xml文件中告诉服务器,".html"文件不需要拦截,即在web.xml文件中加上一下语句

    <servlet-mapping>
              <servlet-name>default</servlet-name>
              <url-pattern>*.html</url-pattern>
        </servlet-mapping>
  • 相关阅读:
    C#枚举中使用Flags特性
    WPF 设置输入只能英文
    PHP array_merge_recursive() 函数
    PHP array_merge() 函数
    PHP array_map() 函数
    PHP array_keys() 函数
    PHP array_key_exists() 函数
    [HNOI2016]网络
    WPF 设置输入只能英文
    WPF 设置输入只能英文
  • 原文地址:https://www.cnblogs.com/ianhuafeng/p/12386017.html
Copyright © 2011-2022 走看看