我有一个在 WebLogic Server 版本上运行的 SpringBoot 应用程序:12.2.1.3.0 当我定义一个自定义 servlet 过滤器时,它在嵌入式 Tomcat 上运行良好。但是,当我将我的应用程序作为 war 文件部署到 wlserver 时,它会在每次请求后抛出以下错误。我在这里错过了什么? <Could not load user defined filter in web.xml: com.thy.bwsadmin.CORSFilter.java.lang.AbstractMethodError at weblogic.servlet.internal.FilterManager$FilterInitAction.run(FilterManager.java:400) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:328) at weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197) at weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203)这是我的 web.xml 文件的内容<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>MWSAdminService</display-name> <filter> <filter-name>CORSFilter</filter-name> <filter-class>com.sample.CORSFilter</filter-class> </filter> <filter-mapping> <filter-name>CORSFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping></web-app>我正在设置 servlet 依赖项以防止 jar 冲突。 <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> </dependency>
1 回答
青春有我
TA贡献1784条经验 获得超8个赞
weblogic 提供的您的 servlet api 可能是旧版本,您的过滤器类需要覆盖 init 方法。
在您的过滤器类中添加以下代码;
@Override public void init(FilterConfig filterConfig) throws ServletException {};
在新版本的 servlet api 中,过滤器类具有默认的空 init 方法。
添加回答
举报
0/150
提交
取消