Spring Framework で Filter を実装したいです。
解決したいこと
Spring Framework で Filter を実装しようとしております。
aaaFilter クラスのdoFilterメソッドが呼び出されるようにしたいです。
発生している問題・エラー
制約の不一致: 型 aaaFilter は、型 FilterRegistrationBean<T> の制約付きパラメーター <T extends Filter> の代替として有効ではありません
該当するソースコード①の26,27行目で出ているエラーとなります。
該当するソースコード
①
package com.example.demo.configuration;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.example.demo.filter.aaaFilter;
@Configuration
public class FilterConfig {
@Bean
public FilterRegistrationBean<aaaFilter> aaaFilter() {
FilterRegistrationBean<aaaFilter> bean = new FilterRegistrationBean<>();
bean.setFilter(new aaaFilter());
bean.addUrlPatterns("/");
bean.addUrlPatterns("/hello");
bean.setOrder(1);
return bean;
}
}
②
package com.example.demo.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class aaaFilter implements Filter {
@Override
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException {
System.out.println("doFilter");
try {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
System.out.println("Request URI is: " + req.getRequestURI());
chain.doFilter(request, response);
System.out.println("Response Status Code is: " + res.getStatus());
} catch (Exception e) {
System.out.println("doFilter ERR");
}
}
@Override
public void init(FilterConfig config) {
}
@Override
public void destroy() {
}
}