我下载了几个webapps并将它们放在我的/ webapps文件夹中。
其中一些我可以通过转到http://localhost:8080/app1
打开,它会打开。
但是,其他一些我会做同样的事情并转到http://localhost:8080/app2
它会显示“HTTP Status 404 - / app2 /”,即使我确定它在那里。我已经检查过它包含一个像app1一样的WEB-INF文件夹,我甚至还重新启动了Tomcat。
我的问题是:是否有任何内容(可能在web.xml文件中)指定启动webapp的URL必须是什么?或者仅仅是http://localhost:8080/<folder name>
?
P.S。如果你想知道我所指的app1和app2到底是什么: app1(作品)= http://assets.devx.com/sourcecode/11237.zip app2(不起作用)= http://www.laliluna.de/download/eclipse-spring-jdbc-tutorial.zip
我也尝试了其他一些,有些是工作,有些则没有。我只是想知道我是否遗漏了什么。
答案 0 :(得分:6)
我通常通过访问管理器页面并确保部署所有上下文(http://localhost:8080/manager/html)来调试它。
听起来app2没有正确部署或由于其他一些错误而未启动。
我会查看日志。那里可能有很多信息,但通常它会解释什么是坏的。
答案 1 :(得分:2)
你提到的第一个zip文件有一个.war
文件作为zip的一部分。第二个是源代码,需要将其构建到.war
文件中。
看起来它已设置为在Eclipse中完成。尝试使用File>>Export
选项,然后选择War文件作为导出类型。
答案 2 :(得分:2)
第二个应用程序(名为WebRoot的目录)也可以正确部署,但是由于根目录中没有“index.jsp”或“index.html”文件,因此可以获得404。
尝试在那里放一个带有这些名字的文件,404就不见了。
web.xml中的servlet映射对于它来说并不是必需的。
答案 3 :(得分:1)
第二个需要弹簧框架。我能找到的唯一可运行的东西是eclipse-spring-jdbc-tutorial.zip\SpringJdbc\src\test\de\laliluna\library\TestClient.java
中的客户端和eclipse-spring-jdbc-tutorial.zip\SpringJdbc\src\de\laliluna\library\sample\MyApplication.java
中的客户端。如果你在eclipse中打开它(这是一个eclipse项目),并且编译,只要安装了Spring框架,你就应该能够运行它们。
答案 4 :(得分:0)
你熟悉log4j吗? Spring将大量常用信息放入通过log4j创建的日志中。当我有一个无法正常启动或无法正常运行的SpringMVC应用程序时,我检查我的log4j并可能将Spring日志级别调高为INFO甚至是DEBUG。
答案 5 :(得分:-1)
如果“/”不可访问,则意味着没有“index.html”,“index.jsp”或web.xml的welcome-files列表中定义的任何内容 此外,不存在上下文ROOT目录的Servlet-Mapping。 检查web.xml中的Servlet-Mappings或尝试找出上下文根目录中的jsp / html / ...文件的名称