通过Eclipse插件启动Tomcat的问题

默认分类   2009-10-23 15:54   阅读118   评论0  
字号:     小

目前在通过Eclipse中插件启动Tomcat时遇到了个问题,就是访问http://localhost:8080/时出现HTTP Status 404 The requested resource (/) is not available.错误,但是通过http://localhost:8080/myapp访问项目时却没有问题,系统配置没有问题,而且手动运行%TOMCAT_HOME%/bin中的startup.bat和shutdown.bat都没有问题,能正确访问http://localhost:8080/http://localhost:8080/managerhttp://localhost:8080/admin/index.jsp

开发环境
Eclipse

Version: 3.4.2

Build id: M20090211-1700

Tomcat 6.0.18

Tomcat插件

wtp-sdk-R-3.0.4-20090213193639

org.eclipse.jst.server.tomcat.core_1.1.104.v20081006.jar

org.eclipse.jst.server.tomcat.ui_1.1.101.v20080620.jar

解决方法
通过手动启动Tomcat时,是采用%TOMCAT_HOME%/webapps(包括docs,host-manager,manager,ROOT4个目录)作为默认的webapp目录的,%TOMCAT_HOME%/webapps目录下包括ROOT,对应服务器的根目录“/”,也就是通过http://localhost:8080/访问看到的Tomcat Welcome页面。

如果在Eclipse中通过插件启动Tomcat,则是采用%ECLIPSE_WORKSPACE_HOME%/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps作为webapp目录的,wtpwebapps下没有ROOT webapp或者有时包括一个空的ROOT webapp。在这种情况下,访问http://localhost:8080/就会看到HTTP error 404 或者一个空白页面。如果把%TOMCAT_HOME%/webapps下的docs,host-manager,manager,ROOT目录拷贝到wtpwebapps目录下,此时也是可以通过http://localhost:8080/访问看到的Tomcat Welcome页面。

Eclipse中的Tomcat插件默认是把%ECLIPSE_WORKSPACE_HOME%/.metadata作为Server Location的,因此当通过Eclispe插件启动Tomcat时,服务器中只运行了Eclipse工作空间中已发布到Tomcat上的项目。

双击Server视图中的“Tomcat 6 at localhost”,打开一个Tomcat Server编辑器,有一栏“Server Locations”是配置服务器的位置。注意:如果已经有项目Publish到Server上了(启动应用也会发布项目),Server Locations栏是不可修改的,可以先Remove项目并Clean Server,使Server Locations栏可修改。选择“Use Tomcat installation”,通过Eclispe插件启动Tomcat时,%TOMCAT_HOME%/webapps目录下的所有应用都会被启动。

如果只想运行Eclipse工作空间的应用项目,可以选择“Use workspace metadata”;反之如果希望同时运行其他Eclipse工作空间之外的应用项目,就可以选择“Use Tomcat installation”。

Tomcat6.0.18的配置问题 
在解决问题的过程中还遇到另外一个问题,手动启动Tomcat6.0.18时也不能访问http://localhost:8080/host-manager,同样报HTTP Status 404 The requested resource (/) is not available.错误,而Tomcat5.0.25中就不存在这个问题。

原因:Tomcat6.0.18与Tomcat5.0.25的默认配置有一些不同。Tomcat6处于安全性的考虑,默认关闭了目录浏览功能的。否则,要是访问目录下没有默认首页,那么该目录下的文件列表就泄露了。

Tomcat-6.0.18/conf/web.xml配置如下:

<servlet>

<servlet-name>default</servlet-name>

<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>listings</param-name>

<param-value>false</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

同样的配置选项在Tomcat-5.0.25/conf/web.xml中配置如下:

<servlet>

<servlet-name>default</servlet-name>

<servlet-class>

org.apache.catalina.servlets.DefaultServlet

</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>listings</param-name>

<param-value>true</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

解决方法就是把Tomcat-6.0.18/conf/web.xml中的false改为true。

 
原文地址:http://blog.csdn.net/miwucc/article/details/5191513

最新文章

  1. UIMenuController使用
  2. 17110 Divisible(basic)
  3. HDU4758 Walk Through Squares AC自动机&amp;&amp;dp
  4. Java集群优化——dubbo+zookeeper构建高可用分布式集群
  5. bzoj 2754 [SCOI2012]喵星球上的点名(后缀数组)
  6. C# Read/Write another Process&#39; Memory ZZ
  7. Android中的音频处理------SoundPool,MediaRecorder,MediaPlayer以及RingStone总结
  8. js页面加载事件
  9. Qt Creator+MinGW+boost特殊函数的使用示例
  10. 全新安装免费的OS X Mavericks 10.9正式版--安装U盘制作指南
  11. 软件工程(GZSD2015)学生博客列表
  12. Jquery使用mouseenter和mouseleave实现鼠标经过弹出层且可以点击
  13. MySQL 的调节和优化的提示
  14. javascript的几个知识点scoping, hoisting, IIFE
  15. 关于Vue的两层for循环
  16. Vue:(五)axios
  17. ABP框架系列之四十四:(OWIN)
  18. 定时器setTimeout实现函数节流
  19. bzoj1801: [Ahoi2009]chess 中国象棋 dp
  20. WIN10安装scrapy/channels等不成功的解决方式

热门文章

  1. RabbitMQ小白菜学习之在window下的安装配置
  2. 机器学习实战笔记(1)——k-近邻算法
  3. ubuntu 更新引导命令
  4. 三分钟解读springmvc依赖
  5. 通过spring实现javamail发送邮件功能
  6. 《JAVASCRIPT高级程序设计》Ajax与Comet
  7. [Direct2D1.1教程] Direct2D特效概览
  8. Tooltip浮动提示框效果(掌握里面的小知识)
  9. Python 黑帽编程 4.2 Sniffer之数据本地存储和加载
  10. Vue.js 系列教程 ②