请求映射返回错误404
问题描述:
这是我的控制器,该控制器的请求映射到这个URL http://localhost:8080/SpringMVCJSON/rest/kfc/brands
请求映射返回错误404
位指示文件
@Controller
@RequestMapping("/kfc/brands")
public class JSONController {
@RequestMapping(value = "{name}", method = RequestMethod.GET)
public @ResponseBody
Shop getShopInJSON(@PathVariable String name) {
Shop shop = new Shop();
shop.setName(name);
shop.setStaffName(new String[] { "name1", "name2" });
return shop;
}
这是与调度请求的servlet请求中的web.xml /响应以及url
<display-name>Spring Web MVC Application</display-name>
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
假设一切都没问题,当我在这个ur上启动我的应用程序时l在返回错误404 http://localhost:8080/SpringMVCJSON/rest/kfc/brands
我的服务器控制台将返回此警告
Apr 26, 2016 12:14:47 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound
WARNING: No mapping found for HTTP request with URI [/SpringMVCJSON/rest/kfc/brands] in DispatcherServlet with name 'mvc-dispatcher'
请为什么不tomcat的请求映射到服务器?
答
您将控制器配置为可在/kfc/brands/{name}
URL上使用,但试图通过/kfc/brands
访问它。在这里http://docs.spring.io/autorepo/docs/spring/3.2.x/spring-framework-reference/html/mvc.html#mvc-ann-requestmapping
任何[春]看护人:
在这里你可以找到关于使用
@RequestMapping
的更多信息?几乎300个相同的问题:http://*.com/search?q=is%3Aq+%22No+mapping+found+for+HTTP+request+with+URI%22+%22in+DispatcherServlet+with+name%22和乍一看没有规范的复制呢。这会产生太多的印象,认为[春]不值得去策划。 – BalusC