스프링 부트 필터 관련 서버 오류 해결 방법 - eunja511005/Tutorial GitHub Wiki
스프링 부트 필터 설정
- 필터에서 직접 의존성 주입 받으면 안됨
- 예상은 필터가 생성되는 시점에 해당 주입 받고자 하는 빈이 생성 되기 전인거 같음
- 필터 Configuration 파일에서 의존성을 넣어 주면 잘 들어감
1. 필터 관련 설정은 MyFilterConfiguration.java에서 전담
2. 필터 생성시 필요한 의존성 주입도 MyFilterConfiguration.java에서 필터 생성자 파라미터 전달
아래 오류 발생시 필터 클래스에 오버라이드 추가 해 줌
starting filter [XssFilter]
java.lang.AbstractMethodError
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:272)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:104)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4343)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4976)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:711)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:688)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:661)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1016)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1903)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// Do nothing
}
@Override
public void destroy() {
// Do nothing
}