2

请帮我弄清楚这种奇怪的行为,我在这里有一个基于 Spring 的项目https://github.com/riuvshin/spring-mvc-learn我想将 *.war 部署到 tomcat 7.0。当我根据日志部署该战争以清理 tomcat 时,它应该可以正常工作,但是当我尝试打开 localhost:8080/contacts 时,出现 404 错误...

如果我从我的 IDE (intellij) 启动该应用程序,它工作正常,如果有人能解释我错过了什么,我会非常高兴。

4

1 回答 1

3

catalina.out日志清楚地显示您的已@Controller映射到路径/contacts

INFO : org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - Mapped "{[/contacts],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.lang.String com.apress.prospring3.ch17.web.controller.ContactController.list(org.springframework.ui.Model)

但是,您正在尝试使用路径访问此处理程序

localhost:8080/contacts 

这仅在您的 webapp 配置为具有上下文路径时才有效,/并且我很确定它不是。

尝试使用

localhost:8080/[myapp]/contacts

[myapp]文件夹中应用程序文件夹的名称在哪里webapps

有关如何更改该路径的信息,请参阅此答案。

于 2013-09-02T14:32:19.660 回答