1. 程式人生 > >在Eclipse中匯入及部署JavaWeb專案遇到的問題及解決方案

在Eclipse中匯入及部署JavaWeb專案遇到的問題及解決方案

問題一:匯入工程後報錯:Unbound classpath variable Error

【原因】之前的Tomcat 5.x生成的.classpath檔案中的

<span style="font-size:14px;"><classpathentry kind="var" path="TOMCAT_HOME/common/lib/servlet-api.jar"/>
<classpathentry kind="var" path="TOMCAT_HOME/common/lib/jasper-runtime.jar"/>
<classpathentry kind="var" path="TOMCAT_HOME/common/lib/jsp-api.jar"/></span>
在新的Tomcat 8.x中不能找到,導致報此錯誤。

【解決方案】刪除原有.classpath檔案,重新執行Tomcat 8.x伺服器,重新生成適合Tomcat 8.x的.classpath檔案。

問題二:報錯:HTTP Status 404, The requested Resource is not available

【原因】導致該錯誤出現的可能原因有:

(1)未將該專案部署在Tomcat伺服器上。

(2)在瀏覽器中輸入的URL輸入錯誤,分為以下幾種情況:

1)IP地址錯誤

2)埠號錯誤

3)專案名輸入錯誤

4)開啟的頁面輸入錯誤

(3)專案檔案位置錯誤

將要開啟的頁面放在META-INF或者WEB-INF下面,這兩個資料夾是禁止外部程式訪問的,但可以在專案程式內部訪問。

【解決方案】

(1)將Eclipse的Server視窗中的Tomcat v8.0 Server右鍵->Open。如下圖所示:



(2)點選Add External Web Module,將專案模組新增到Tomcat Web Modules中,如下圖所示:


於是,OnDuty2專案即可在瀏覽器中開啟。

問題三:在Eclipse中修改java程式碼,執行結果報錯相同。

【原因】程式碼未清理乾淨。

【解決方案】

(1)Tomcat Stop後,點選Clean。

(2)Project->Clean。(記住不選Start a bulid immediately)

(3)Project->Build。

問題四:報錯:HTTP Status 500 - javax.servlet.ServletException: java.lang.NoClassDefFoundError: Connbean/Connectionsql

【原因】我將工程中bin下面的Connbean/Connectionsql.class檔案和WEB-INF/classes下面的Connbean/Connectionsql.class檔案全部刪除,但是點選Build之後,只在bin下面生成了Connbean/Connectionsql.class檔案,WEB-INF/classes下面卻並沒有Connbean/Connectionsql.class檔案,導致出現類定義找不到的錯誤。

【解決方案】將每次Build後生成的Connbean/Connectionsql.class檔案拷到WEB-INF/classes下面,程式即可正常執行。