1. 程式人生 > >開發Servlet時WEB-INF下面的lib目錄下缺jar包的表現

開發Servlet時WEB-INF下面的lib目錄下缺jar包的表現

寫一個最簡單的Servlet,執行時出錯,404,還有無法LoadClass。一些錯誤資訊如下:

javax.servlet.ServletException: Error instantiating servlet class qxd.MySV......

org.apache.catalina.authenticator.AuthenticatorBase.invoke((AuthenticatorBase.java:502)......

再次重新整理頁面時,則出現404錯誤。

Tomcat Servlet 404

找了半天原因,最後覺得是WEB-INF下面的lib目錄下缺相應的jar包導致的。將兩個涉及的JAR包放到這個目錄下,就可以了。

這兩個是基礎性的jar包,但是缺乏了也是會出執行時錯誤:

javax.servlet-5.1.12.jar

commons-io-2.4.jar

JAVA程式裡面的import匯入部分寫的是:,實際下載匯入的包名稱是:commons-io-2.4.jar這個需要注意。

另外,把build path的預設位置該到了當前的專案下:ServeletQ/WebContent/WEB-INF/classes, 但不知道這個是不是核心的一個原因。

還有,Eclipse裡面設定了自動重建。但是隻有修改了web.xml檔案後才會自動build和釋出,原因需要研究。

以上分析過程中,是開始考慮如何部署Servlet到生產環境的時候,才琢磨出的問題的所在。