zoukankan      html  css  js  c++  java
  • eclipse新建tomcat server但是总是报404的解决方法

    今天在eclipse中新建了tomcat server,但是由于一些配置出了问题,导致总是出现404报错,具体情况如下

    症状:

    tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080/不能访问,且报404错误。同时其他项目页面也不能访问。

    关闭eclipse里面的tomcat,在tomcat安装目录下双击startup.bat手动启动tomcat服务器。访问htt://localhost:8080/能正常访问tomcat管理页面

    然后我去搜索了一下,找到了这篇blog,http://blog.csdn.net/wqjsir/article/details/7169838

    里面说

    症状原因:

           eclipse将tomcat的项目发布目录(tomcat 目录中的webapp)重定向了,所以你会发现在tomcat安装目录下的webapp目录里面找不到你的项目文件。

    -------------------2013-12-27重新编辑:-------------------

      感觉之前写的废话好多,简直无语,长话短说,解决方案就是:在eclipse中双击你配置好的服务器,然后:

      1、如果你选择了Use Tomcat installation选项,那么你就要注意,配置好“%CATALINA_HOME%/conf/server.xml”(里面的docBase要指向你的web-content的根目录,在这里,我的是E:web.workspacemldndemoWebContent,即WEB-INF文件夹在这个目录下),并且把Deploy path设置为webapps

      2、如果你选择了Use workspace metadata选项,那么就保持其默认设置,并且配置好“[eclipse的workspace目录]/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml”(docBase在这里是E:web.workspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsROOT,WEB-INF文件夹在这个目录下,并且注意,把你写的jsp和html页面拷贝到这个目录下),并且把Deploy path设置为wtpwebapps

    -------------------下面是以前写的详细内容-------------------

    然后呢,我就双击在eclipse中建立的tomcat server,看到如下信息

    你可以看到,eclipse把所有的配置文件全部放到了当前workspace的子目录中,而不是像一般情况下给放到tomcat的安装目录下,对于我目前的情况,就是在这个目录下

    好,那我就按照他说的方法,把路径改成如下,这样就指向tomcat安装目录中的路径了吧?

    但是,情况是什么呢?还是404

    后来我就去检查%CATALINA_HOME%/conf/server.xml,诶?里面居然没有配置<Context path="" docBase=""></Context>

    我以前可是配置好了的!

    其实呢,原因就是我在上面设置Use Tomcat installation的时候,eclipse把%CATALINA_HOME%/conf/server.xml给替换了,替换成了谁呢?看下图,这个server.xml是在我的workspace目录里面的/conf文件夹中的,上面已经说过了,但是尽管这个server.xml与%CATALINA_HOME%/conf/server.xml不是同一个,但是只要你配置为Use Tomcat installation,你在这个server.xml中所做的任何修改都会被反映到%CATALINA_HOME%/conf/server.xml中!也就是说eclipse帮你同步了这两个文件的内容!

    但是要注意,eclipse仅仅会在你修改了Server Locations选项之后,并且重启了服务器,才会进行这个同步!

    好吧,重新写上去(随便你写到哪个server.xml中都可以,因为在当前配置下,eclipse会帮你同步这两个文件的内容,但是要注意,这个同步是单向的,不是双向的,也就是说,你修改%CATALINA_HOME%/conf/server.xml,eclipse不会将其内容同步到/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml中),重启服务器,嗯,现在再看,可以用了

    ==============================

    Ps:

    实际上呢,我上面提到的那个blog没说中要点,最根本的原因还是server.xml没有被配置好,你完全可以选择就用Use workspace metadata配置,也不要把wtpwebapps修改为webapps,你只需要把上图中的/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml给配置好(主要是加上<Context>)就行了。

    ========================================================

    总之,如果你选择了Use Tomcat installation选项,那么你就要注意,配置好%CATALINA_HOME%/conf/server.xml(里面的docBase要指向你的web-content的根目录,在这里,是E:web.workspacemldndemoWebContent,即WEB-INF文件夹在这个目录下),并且把Deploy path设置为webapps

    如果你选择了Use workspace metadata选项,那么就保持其默认设置,并且配置好/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml(docBase在这里是E:web.workspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsROOT,WEB-INF文件夹在这个目录下,并且注意,把你写的jsp和html页面拷贝到这个目录下),并且把Deploy path设置为wtpwebapps

  • 相关阅读:
    产品经理做产品设计的九步法
    产品经理要懂多少技术?
    产品经理如何注重细节意识的培养
    产品经理如何在技术人员面前更有说服力?
    从程序员到项目经理:每个人都是管理者
    我的人才管理方式
    一个关于内部类的小例子
    java中的全局变量与静态变量的区别与联系?有时候为什么专门定义静态变量。(标题党~~)
    举一反三,一小步。
    中国移动的企业文化 ,以及中国移动都有那些业务?
  • 原文地址:https://www.cnblogs.com/qrlozte/p/3175382.html
Copyright © 2011-2022 走看看