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.workspace\mldndemo\WebContent,即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\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ROOT,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.workspace\mldndemo\WebContent,即WEB-INF文件夾在這個目錄下),並且把Deploy path設置為webapps

如果你選擇了Use workspace metadata選項,那么就保持其默認設置,並且配置好/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml(docBase在這里是E:\web.workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ROOT,WEB-INF文件夾在這個目錄下,並且注意,把你寫的jsp和html頁面拷貝到這個目錄下),並且把Deploy path設置為wtpwebapps


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM