我将一个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日志文件中。
答案 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)
答案 4 :(得分:-1)
当我使用Tomcat时,这个问题也发生在我身上。如果部署中没有错误,则很有可能,如果您在Chrome中打开Web控制台(开发人员工具->控制台)或Ctrl-Shift-I,它将表示它正在搜索特定的丢失文件。
一旦将该文件添加回去(如果上述情况成立),Tomcat应该可以正常工作。