您的位置:首页 > 编程语言 > Java开发

SpringMVC环境搭建问题:org.springframework.web.servlet.DispatcherServlet noHandlerFound

2016-11-07 20:25 1291 查看
【题记】因为很菜,所以弄出了诸多问题,因为很菜,所以将该问题记载。   下面这个问题是我在搭建SpringMVC环境中遇到的最棘手,解决最久的问题。整整折腾了两天,红着眼睛调调试试到凌晨一两点。

【org.springframework.web.servlet.DispatcherServlet noHandlerFound

No mapping found for HTTP request with URI [/mvc/WEB-INF/view/Welcome.jsp] in DispatcherServlet with name 'rest'】

     百度、google也找到了不少同类型问题,文献如下:

[1]spring的困惑--org.springframework.web.servlet.DispatcherServlet

[2]org.springframework.web.servlet.DispatcherServlet noHandlerFound

[3]spring MVC的困惑--url-pattern的/和/*有区别

    如果幸运,按照上面的提示解决问题,那么说明导致该问题的原因是Servlet的路径没用配置正确。至于为何用/和/*就导致不正确呢,上面的文献[3]末尾有解释。如果还想知道更细节、更本质的解释,可以百度、google关键字【web.xml  配置  url-pattern  通配符】等。这里有一篇文献不错的文献:

[4]java的web.xml中配置

    如果很不幸,按照上面的方法修改问题依旧,那就说明不是Servlet路径的问题了。而是没有找到对应的Servlet类了。为何会没有对应的Servlet呢?如果你和我一样是菜鸟,而且利用百度、google搜索关键字【Spring MVC 环境 搭建】找到了一系列文章,然后按上面的步骤操作,出现了这个问题。那么,绝大部分可能是因为没有指定WEB工程的Build Path导致。由于,有些版本的ECLIPSE默认没有将WEB工程的CLASSPATH设置为WEB-INFO/classes,所以编译的Serlvet类就不在该路径下。而tomcat的web工程部署默认在该路径下寻找Servlet类,因而即使web.xml中正确配置了url-pattern也将出现上述错误。将Build
Path修改后,问题解决。

我这里做总结一下,出现这种错误是大部分是因为/和/*的原因 但是有意思我没有出现以上的错误,因为我写错了扫描组件中 base-package 的包路径。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐