Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발자 도전기

[Spring] Negative matches: Did not match: 본문

개발공부/Spring

[Spring] Negative matches: Did not match:

jnnjnn 2024. 6. 12. 11:27

 

문제

 

Negative matches:
-----------------

   OAuth2ResourceServerJwtConfiguration.OAuth2SecurityFilterChainConfiguration:
      Did not match:
         - AllNestedConditions 1 matched 1 did not; NestedCondition on DefaultWebSecurityCondition.Beans @ConditionalOnMissingBean (types: org.springframework.security.web.SecurityFilterChain; SearchStrategy: all) found beans of type 'org.springframework.security.web.SecurityFilterChain' filterChain; NestedCondition on DefaultWebSecurityCondition.Classes @ConditionalOnClass found required classes 'org.springframework.security.web.SecurityFilterChain', 'org.springframework.security.config.annotation.web.builders.HttpSecurity' (DefaultWebSecurityCondition)


Exclusions:
-----------

 

jwt 로그인을 구현하던 중 다음과 같은 에러가 떴다.

 

 

원인

@Configuration
public class SecurityConfig {
    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
    }
}

 

SecurityFilterChain을 다음과 같이 SecurityConfig에 등록해서 사용중이었는데 SecurityFilterChain의 Bean을 찾지 못해서 생긴 오류였다.

 

 

해결

1. @EnableWebSecurity 어노테이션 붙이기

@Configuration
@EnableWebSecurity
public class SecurityConfig {
    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
    }
}

 

해당 클래스에 @EnableWebSecurity을 붙이면 기본 스프링 필터체인에 등록된다

 

 

2. filterChain ->securityFilterChain으로 이름 변경

@Configuration
public class SecurityConfig {
    @Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
    }
}

 

해당되는 이름으로 빈을 등록할 수 있도록 이름을 바꿔준다