Tomcat在所有新部署的WAR文件上报告404错误?

时间:2010-06-10 17:16:48

标签: java tomcat http-status-code-404 war

我将一个WAR文件部署到$ TOMCAT_HOME / webapps中,方法是将文件复制到目录中,就像我以前做过一千次一样。 Tomcat检测到WAR并使其膨胀。我可以在命令行(它是Fedora)遍历我服务器上的目录树。

但是,当我在客户端计算机的浏览器中处理webapp时,除了404错误之外我什么也得不到。这发生在完全独立的WAR的最后两次部署中。

第一个是替换现有的WAR。我首先删除了WAR及其膨胀的目录,然后复制到WAR中充气...... 404.我再次删除了所有内容,从备份中放回了以前工作的WAR。它膨胀并起作用。

第二个是一个全新的,从未部署过的WAR ......只有404。

其他WAR正在发挥作用,但现在我害怕改变任何事情,直到我知道发生了什么。有线索吗?


编辑:在我的评论中,您可以看到Tomcat部署WAR后,日志中包含“SEVERE:Error listenerStart”。没有报告堆栈跟踪或其他错误。


Edit2 :原来第二个WAR正在寻找ELResolver并找不到它。这被隐藏在localhost日志文件中。

5 个答案:

答案 0 :(得分:-1)

如果Web应用程序未正确部署,您将获得404。

您应该删除WAR文件,让Tomcat删除膨胀的war文件夹本身。

ListenerError可能是web.xml仍然引用了一个侦听器,而该侦听器不在你想要放入战争的新代码中。

答案 1 :(得分:-1)

删除war文件,清除tomcat,启动,关闭,然后再次发动战争。

ONTO:确保正确生成战争。

答案 2 :(得分:-1)

你应该去"服务器"选项卡,然后单击右侧的"属性"然后按下按钮"切换位置"。之后再次进行测试。如果有效,请告诉我。 (参考:404 with tomcat / eclipse deployed webapp)。

答案 3 :(得分:-1)

  1. 停止Tomcat
  2. 只保留一个版本的war文件
  3. 删除膨胀的文件夹
  4. 从tomcat基目录(或)CATALINA HOME
  5. 中删除“work”文件夹及其内容
  6. 重启tomcat,现在测试应用程序。

答案 4 :(得分:-1)

当我使用Tomcat时,这个问题也发生在我身上。如果部署中没有错误,则很有可能,如果您在Chrome中打开Web控制台(开发人员工具->控制台)或Ctrl-Shift-I,它将表示它正在搜索特定的丢失文件。

一旦将该文件添加回去(如果上述情况成立),Tomcat应该可以正常工作。