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

Java Tomcat在所有新部署的WAR文件上报告404错误?,java,tomcat,http-status-code-404,war,Java,Tomcat,Http Status Code 404,War,我通过将WAR文件复制到目录中,将其部署到$TOMCAT_HOME/webapps中,就像我以前做过一千次一样。Tomcat检测到战争并将其充气。我可以在命令行遍历服务器上的目录树(它是Fedora) 但是,当我在我的客户机浏览器中寻址webapp时,除了404错误外,我什么也得不到。最近两次部署完全不同的战争就是这样 第一种是取代现有的战争。我首先删除了战争及其膨胀的目录,然后在战争中复制了膨胀的。。。404我再次删除了所有内容,从备份中恢复了以前工作的WAR。它膨胀并起作用 第二次是一场全新

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

但是,当我在我的客户机浏览器中寻址webapp时,除了404错误外,我什么也得不到。最近两次部署完全不同的战争就是这样

第一种是取代现有的战争。我首先删除了战争及其膨胀的目录,然后在战争中复制了膨胀的。。。404我再次删除了所有内容,从备份中恢复了以前工作的WAR。它膨胀并起作用

第二次是一场全新的,前所未有的战争。。。只有404

其他战争也在起作用,但现在我害怕改变任何事情,直到我知道发生了什么。有什么线索吗


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



Edit2:第二次战争是在寻找ELResolver,但找不到它。这被隐藏在本地主机日志文件中。

如果web应用程序没有正确部署,您将得到404

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


ListenerError可能是web.xml仍然引用了一个监听器,它不在您要放入war的新代码中。

删除war文件,清理tomcat,启动,关闭,然后再次放入war

转到:确保已正确生成war。

您应该转到“服务器”选项卡,右键单击“属性”,然后按“切换位置”按钮。然后你再做一次测试。让我知道它是否有效。(参考:)

  • 阻止雄猫
  • 仅保留war文件的一个版本
  • 移除膨胀的文件夹
  • 从tomcat基本目录(或)CATALINA主目录中删除“work”文件夹及其内容
  • 重新启动tomcat,现在测试应用程序

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


    一旦您重新添加该文件(如果上述为真),Tomcat应该可以正常工作。

    启动/错误日志中的任何内容?信息:部署web应用程序存档shindig.war Jun 102010 9:29:41 AM org.apache.catalina.core.StandardContext start严重错误listenerStart Jun 10,2010年9:29:41 AM org.apache.catalina.core.StandardContext启动严重:由于以前的错误,上下文[/shindig]启动失败,但不存在“以前的错误”。必须存在以前的错误。不,不一定。我已经多次看到listenerStart出现此错误,始终没有以前的错误。我记得,这通常是一个类路径问题。您可以共享tomcat日志文件中的错误报告吗?或者侦听器可能还可以,但它所依赖的其他一些库缺少/具有不同的版本等等。这是一个非常虽然调试。如果没有index.html,我总是得到一个404