Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring MVC REST处理器错误_Rest_Spring Mvc - Fatal编程技术网

Spring MVC REST处理器错误

Spring MVC REST处理器错误,rest,spring-mvc,Rest,Spring Mvc,我是spring MVC和REST的新手。。我对一个简单的测试控制器有一个问题,我从这里找到的示例和spring文档中组合了这个控制器 当我点击url时,我得到下面的错误 我得到了一个错误: Sep 23, 2015 11:26:55 AM org.springframework.web.servlet.PageNotFound noHandlerFound WARNING: No mapping found for HTTP request with URI [/test-api/user/

我是spring MVC和REST的新手。。我对一个简单的测试控制器有一个问题,我从这里找到的示例和spring文档中组合了这个控制器

当我点击url时,我得到下面的错误 我得到了一个错误:

Sep 23, 2015 11:26:55 AM org.springframework.web.servlet.PageNotFound  noHandlerFound
WARNING: No mapping found for HTTP request with URI [/test-api/user/14] in DispatcherServlet with name 'testapi'
我正在使用xml进行配置。。我还没有准备好移动到java配置

web.xml SpringWebMVC应用程序

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

<servlet-mapping>
    <servlet-name>springtest</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/testapi-servlet.xml</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

我应该定义什么处理程序。。没有一个示例或文档说明需要定义处理程序

删除contextConfigLocation

替换以下内容:

<servlet-mapping>
    <servlet-name>springtest</servlet-name>
    <url-pattern>/test-api</url-pattern>
</servlet-mapping>

弹簧试验
/测试api

确保您的xml文件是test-api-servlet.xml,而不是testapi-servlet.xml

我发现了我的问题。我在元件扫描中把包裹错丢了。我编辑的示例代码不能完全代表我所拥有的内容,实际上是正确的。

感谢您的关注。。结果是我错了。我贴出了答案。。
 package com.springtest.testapi.api;
 @RestController
 public class SpringTest {
    @RequestMapping(value="/user/{id}", method = RequestMethod.GET)
    public User getUser(@PathVariable int id) {
    User u = new User(id,"Test","Me");
    return u;
}
<servlet-mapping>
    <servlet-name>springtest</servlet-name>
    <url-pattern>/test-api</url-pattern>
</servlet-mapping>