我在一个spring mvc应用程序中遇到404
错误:The requested resource is not available
我在eclipse中开发并使用eclipse中的run as ... run on server
在tomcat 7的本地实例上进行测试。当应用程序启动应用程序的根URL时,会显示错误。
我没有对welcome.jsp进行更改,也没有对xml配置文件进行更改,因为它最后工作。由于问题不在于配置文件,我不会通过添加它们来分散这个帖子。
另请注意,eclipse控制台中没有错误日志或堆栈跟踪。
如何在不丢弃404的情况下加载我的应用程序?
注意:我在下面给出了自己的答案。事实证明解决方案是右键单击eclipse中服务器选项卡中的服务器实例,然后执行清理,然后发布,然后再次运行...再次运行服务器,这会导致应用程序加载有意义的堆栈跟踪,然后我很容易解决。正如我上面预测的那样,这个问题出现在eclipse中,而不是配置文件。这是一个有效的问题。没有必要投票或投票关闭它。我希望它能帮助别人。
答案 0 :(得分:1)
通常,您不会将您的html或jsp文件放在WEB-INF文件夹下。通常,您的目录结构如下所示:
[application root]
|
|_ index.html
|_ index.jsp
|_ media
| |_ css
| |_ js
| | |_ jquery..js
| |
| |_ images
|_ META-INF
| |_ context.xml
|_WEB-INF
|_ classes
|_ lib
| |_ jed-1.0.jar
| |_ gson-2.2.4.jar
| |_ log4j-1.2.8.jar
| |_ mysql-connector-java-5.1.18.jar
|_ properties
|_ log4j_CONSOLE.properties
|_ log4j_FILE.properties
您将收到404错误,因为servlet容器正在应用程序根文件夹下查找html或jsp页面,而不是在WEB-INF文件夹下。此外,您的web.xml文件应包含以下内容,以指定主页:
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
您的web.xml没有此功能。希望这会有所帮助。
答案 1 :(得分:1)
问题在于Eclipse中的损坏。所以解决方案是:
这五个步骤导致app加载了一个有意义的堆栈跟踪错误,其中涉及_someclassname_controller.java中的冗余url映射,当我上次在Eclipse中工作时,我正处于编辑过程中。当我解决了堆栈跟踪错误时,应用程序再次运行。