Remove the @Component or @Service annotation frome here:
public class JwtRequestFilter extends OncePerRequestFilter {
private final MyUserDetailsService userDetailsService;
private final JwtUtil jwtUtil;
public JwtRequestFilter(MyUserDetailsService userDetailsService, JwtUtil jwtUtil) {
this.userDetailsService = userDetailsService;
this.jwtUtil = jwtUtil;
}
In your SecurityConfig:
@Configuration
@EnableWebSecurity
public class SecurityConfig {
private final MyUserDetailsService myUserDetailsService;
private final JwtUtil jwtUtil;
@Autowired
public SecurityConfig(MyUserDetailsService myUserDetailsService, JwtUtil jwtUtil) {
this.myUserDetailsService = myUserDetailsService;
this.jwtUtil = jwtUtil;
}
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
JwtRequestFilter jwtRequestFilter = new JwtRequestFilter(myUserDetailsService, jwtUtil);
... remaining code
}