Java Spring MVC : No mapping found for HTTP request with URI

标签 java eclipse spring spring-mvc

我在设置 Spring MVC 时遇到问题...我有这个项目结构

-SpringTest<br />
   -Java Resources
      -src
         -org.basic.controller
             FormController.java
.
.
.
.
-WebContent
   +META-INF
   -WEB-INF
       dispatcher-servlet.xml
       +lib
       -views
           form.jsp
       web.xml

这些是代码页:

web.xml

<web-app id="WebApp_ID" version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

  <display-name>Spring Web MVC Application</display-name>

  <servlet>
    <servlet-name>dispatcher</servlet-name>
        <servlet-class>
                  org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.htm</url-pattern>
  </servlet-mapping>

</web-app>

dispatcher-servlet.xml

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">



    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
        <property name="prefix">
            <value>/WEB-INF/views/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

</beans>

FormController.java

package org.basic.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/form.html")
public class FormController {


}

但是,在使用 jboss 部署之后,当我尝试访问“/SpringTest/form.htm”时,它会返回此错误:

WARN [org.springframework.web.servlet.PageNotFound] (http-localhost-127.0.0.1-8080-1) 在 DispatcherServlet 中找不到带有 URI [/SpringTest/form.htm] 的 HTTP 请求的映射名称'调度员'

最佳答案

@RequestMapping("/form.html")

对比

/SpringTest/form.htm

您的 @RequestMapping url 中有一个额外的 l

不要忘记component-scan你的 Controller 所在的包。

关于Java Spring MVC : No mapping found for HTTP request with URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18751336/

相关文章:

java - 多线程的synchronizedList

java - 如何自定义 Vitamio widget?

java - java中ArrayList的indexOf()返回-1

java - 在默认包中的 JAR 文件中导入类

java - 在以下任何来源中均未找到插件 [id : 'org.springframework.boot' , 版本: '2.1.7.RELEASE']

java - 在哪些情况下我们可以使用 public static void main(String... args) 而不是 public static void main(String[] args)

java - 调试和运行 GWT/GAE 应用程序的客户端/服务器代码

java - 通知功能在某些设备上崩溃

java - 如何恢复 Spring Boot 1.5 中的默认异常映射?

java - Thymeleaf 不适用于驼峰类字段