專案部署到Tomat報異常:jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending ...
專案部署到Tomcat報這樣的異常:
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
原因分析:
造成這種情況的原因很可能是以下兩種情況:
一、專案的WEB-INF/lib下有servlet-api.jar,與Tomcat自帶的servlet-api.jar衝突了。
二、專案的WEB-INF/lib下有包含javax.servlet包的其他JAR包(如WebLogic 8.1的weblogic.jar),造成與Tomcat自帶的servlet-api.jar的衝突。
因為Tomcat的WebappClassLoader載入JAR包時會進行校驗,一旦發現上述衝突就會報出上面的異常。
解決方案:
一、針對第一種情況,不要將servlet-api.jar放到WEB-INF/lib下,因為專案部署時根本不需要這個jar包,Tomcat已經提供了。當然如果工程不匯入此jar包,程式碼可能會報錯,你可以通過Eclipse把jar包匯入到工程中即可,打war包時不要包含這個jar包。
二、針對第二種情況,談談我的解決辦法,在我的專案中由於某種特殊的需求,weblogic.jar是通過自定義的類載入器載入的,而不是由Tomcat的WebappClassLoader載入,所以上述問題也就不存在了。如果您遇到同樣的問題,可以借鑑此種方案,只需寫一個最簡單的類載入器即可。
相關文章
- java專案部署異常解析及處理方案Java
- 如何釋出本地maven專案jar包部署到nexus私服?MavenJAR
- tomat修改預設專案路徑
- 專案部署到LinuxLinux
- Springboot專案依賴jar分離部署Spring BootJAR
- React專案模板-從專案搭建到部署React
- Vue專案打包到django部署VueDjango
- Python常見專案部署流程Python
- 異常體系與專案實踐
- TrustStrategy——Java中httpclient.jar和httpcore.jar版本差異帶來的異常RustJavaHTTPclientJAR
- 利用Git subtree 部署專案到 GitHubGithub
- .NET Core +Angular 專案 部署到CentOSAngularCentOS
- java專案部署到伺服器Java伺服器
- SpringBoot專案中遇到的異常Spring Boot
- J2EE專案異常處理
- Springboot專案啟動異常排查Spring Boot
- Java 異常處理專題,從入門到精通Java
- idea執行專案報錯找不到jar包IdeaJAR
- django專案部署到centos,踩的坑DjangoCentOS
- Maven deploy部署jar包到遠端私倉MavenJAR
- 小米商城專案(JSP+Servlet專案)JSServlet
- Servlet 2.3過濾器程式設計 (轉)Servlet過濾器程式設計
- springboot專案中的異常處理Spring Boot
- JN專案-型別轉換異常處理型別
- 【SpringBoot】三十二、SpringBoot專案Jar包如何瘦身部署Spring BootJAR
- Maven專案打jar包MavenJAR
- gradle專案打包jarGradleJAR
- 換ojdbc14.jar驅動後clob欄位後臺報異常的解決JDBCJAR
- 5分鐘部署一個Hello World Servlet到CloudFoundryServletCloud
- 如何將專案部署到伺服器上伺服器
- 部署vue專案到Linux伺服器VueLinux伺服器
- springboot專案部署到tomcat容器Spring BootTomcat
- weblogic專案能部署到Jboss中嗎?Web
- 將專案從 GitHub 部署到伺服器Github伺服器
- jenkins將打包的jar包部署到nexusJenkinsJAR
- 專案分享九:客戶端的異常處理客戶端
- Servlet 2.3過濾器程式設計(二) (轉)Servlet過濾器程式設計
- javabean 如何打包到jar檔案裡JavaBeanJAR