【发布时间】:2014-01-15 07:21:55
【问题描述】:
dispatcher-servlet 似乎无法执行组件扫描。
<context:component-scan base-package="abc" />
在 abc 包下的我的控制器文件 (HelloController.java) 中。代码编写如下:
@Controller
@RequestMapping("/hello")
public class HelloController {
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute("message", "Hello Spring MVC Framework!");
return "hello"; //I have already made hello.jsp in web-inf/jsp/
}
}
我的应用程序名称是 SpringMiddle。当尝试 url 为:
http://localhost:8080/SpringMiddle/hello.htm
我在 web.xml 中有以下 url 模式
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
它显示错误 HTTP 404 not found。
编辑::它向我显示警告
WARNING: No mapping found for HTTP request with URI [/SpringMiddle/hello.htm] in DispatcherServlet with name 'dispatcher'
【问题讨论】:
-
两个问题:您的应用程序是否正确部署在服务器上?您在 stacktrace 中看到了什么错误?
-
尝试在控制器内部进行调试并检查它是否正常工作。还要发布您的应用程序上下文文件和 web.xml,以便人们可以帮助您。
-
您的 mvc 配置中有以下内容吗?
<mvc:annotation-driven /> -
@Taylor:不,我没有这样的标签。
-
试着把它放进去。 :)
标签: java spring-mvc url-routing