日常填坑
1. Filter 错误引起的问题, IDEA 2021.1.x IDE遇到过这个问题?
//Tomcat localhost log
六月 17, 2021 2:48:42 下午 org.apache.catalina.core.ApplicationContext log
信息: No Spring WebApplicationInitializer types detected on classpath
六月 17, 2021 2:48:42 下午 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext
六月 17, 2021 2:48:48 下午 org.apache.catalina.core.StandardContext filterStart
严重: 启动过滤器异常
java.lang.AbstractMethodError
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:106)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4973)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5672)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1007)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:983)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:639)
at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1899)
//控制台日志 server
六月 17, 2021 2:48:48 下午 org.apache.catalina.core.StandardContext startInternal
严重: 一个或多个筛选器启动失败。完整的详细信息将在相应的容器日志文件中找到
六月 17, 2021 2:48:48 下午 org.apache.catalina.core.StandardContext startInternal
严重: 由于之前的错误,Context[/follow_service_api_war_exploded]启动失败
六月 17, 2021 2:48:48 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesJdbc
严重: Web应用程序 [/follow_service_api_war_exploded] 注册了JDBC驱动程序 [com.mysql.jdbc.Driver],但在Web应用程序停止时无法注销它。 为防止内存泄漏,JDBC驱动程序已被强制取消注册。
六月 17, 2021 2:48:48 下午 org.apache.catalina.loader.WebappClassLoaderBase loadClass
信息: 非法访问:此Web应用程序实例已停止。无法加载[com.mysql.jdbc.MySQLConnection]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1836)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1795)
根本原因:
tomcat版本问题, tomcat7和tomcat8都会报错, tomcat9就不会;
解决办法:
方式1:删除Filter 的实现类
方式2: 覆写Filter的除doFilter外的其他两个方法 init(FilterConfig filterConfig), destroy(); (经验证此方法无效, 网上的方法)
方法3: 替换tomcat版本为tomcat9

浙公网安备 33010602011771号