为了账号安全,请及时绑定邮箱和手机立即绑定

无法在 web.xml 中加载用户定义的过滤器:com.xxx.CORSFilter

无法在 web.xml 中加载用户定义的过滤器:com.xxx.CORSFilter

慕的地6264312 2023-03-31 14:37:22
我有一个在 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 方法。


查看完整回答
反对 回复 2023-03-31
  • 1 回答
  • 0 关注
  • 126 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信