java.lang.ClassCastException: xxxxxx cannot be cast to javax.servlet.Filter 报错方法解决

maven项目加载过滤器时报错 ....... cannot be cast to javax.servlet.Filter

解决方法:

1、
检查你 过滤器的类 有没有实现 Filter 接口(刚入坑时被坑过)
在这里插入图片描述
2、
server-:tomcat 启动后先将 tomcat/lib 目录下的 jar 包全部读入内存,如果 webapps 目录里的应用程序中 WEB-INF/lib 目录下有相同的包,将无法加载,

不同版本的包之间也会造成类似问题

 
 

解决方法:在 servlet-ap.jar 中加入 <scope>provided</scope>
如下:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>  加入这行
   </dependency>

想具体了解原理,可以参考这篇文章
https://blog.csdn.net/wenguang_hz/article/details/46227275

猜你喜欢

转载自blog.csdn.net/bell_love/article/details/106064610