国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

解決cannot be cast to javax.servlet.Filter 報錯的問題

2020-07-27 21:27:15
字體:
來源:轉載
供稿:網友

cannot be cast to javax.servlet.Filter 報錯, 原因servlet-api.jar沖突

使用maven開發web應用程序, 啟動的時候報錯:

jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class

然后輸出錯誤:

嚴重: Exception starting filter encodingFilterjava.lang.ClassCastException: org.springframework.web.filter.CharacterEncodingFilter cannot be cast to javax.servlet.Filter

問題的原因是server-:tomcat 啟動后先將tomcat/lib目錄下的jar包全部讀入內存,如果webapps目錄里的應用程序中WEB-INF/lib目錄下有相同的包,將無法加載,

不同版本的包之間也會造成類似問題

解決這個問題的方法就是對于servlet-ap.jar 使用 <scope>標簽,編譯的時候用到servlet-api和jsp-api,但在打包的時候不用這兩個依賴

如下:

<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.4</version> <scope>provided</scope></dependency>

<dependency>中<scope>,它主要管理依賴的部署。目前<scope>可以使用5個值: 

   * compile,缺省值,適用于所有階段,會隨著項目一起發布。
    * provided,類似compile,期望JDK、容器或使用者會提供這個依賴。如servlet.jar。
    * runtime,只在運行時使用,如JDBC驅動,適用運行和測試階段。
    * test,只在測試時使用,用于編譯和運行測試代碼。不會隨項目發布。
    * system,類似provided,需要顯式提供包含依賴的jar,Maven不會在Repository中查找它。

以上就是cannot be cast to javax.servlet.Filter 報錯 的解決辦法,后續繼續整理相關知識,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 清流县| 平泉县| 安义县| 同心县| 安康市| 家居| 永胜县| 综艺| 连南| 互助| 汶川县| 左云县| 休宁县| 永福县| 彭阳县| 滨州市| 喜德县| 镇巴县| 马公市| 宁蒗| 桐梓县| 三亚市| 隆昌县| 陵水| 临清市| 汉中市| 若羌县| 临安市| 景德镇市| 怀远县| 桂林市| 清远市| 屏山县| 武义县| 德惠市| 丁青县| 密山市| 威远县| 宣威市| 宜宾县| 开封县|