1、警告的相關信息
七月 24, 2017 3:53:04 下午 org.springframework.web.servlet.DispatcherServlet noHandlerFound
警告: No mapping found for HTTP request with URI [/user/login.do] in DispatcherServlet with name 'dispatcher'
2、解決步驟:
(1)首先第一步去你對應Contorller文件中查查是否在類上有@Contorller注解,標注該類為Controller,如果沒有則加上@Controller注解,重啟tomcat。如果之前你的訪問都好使,就個別Controller不好使,多半是這個原因。
(2)如果上面的第一個方法不好使,我們看一下我們web.xml文件
重點關注這段:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/xxx.servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup><!--這里的值小於0時只有當選擇這個servlet時才會被加載-->
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
紅色部分為指定用於加載Controller文件的配置文件的位置/WEB-INF/xxx.servlet.xml,不配置默認訪問dispatcher-servlet.xml,查查自己配置文件的位置是否正確。
(3)如果還不能解決問題,我們查看一下,我們加載Controller的配置文件,默認為dispatcher-servlet.xml,看看文檔中有沒有下面兩個標簽:
<!--首先是包掃描,掃描contorller注解-->
<context:component-scan base-package="com.tmall" annotation-config="true"/>
<!-- 啟動SpringMVC的注解功能,它會自動注冊HandlerMapping、HandlerAdapter、ExceptionResolver的相-->
<mvc:annotation-driven/>
