분명 제대로 @Valid를 적용하였고 그 대상의 Class의 유효성 검증을 하기위한 멤버변수에도 @Pattern을 적용해주었다. 그런데 디버깅을 해보니 그냥 무시해버리는 현상이 발생했다.

한참을 무엇이 문제인지 분석하다가 라이브러리 의존성에 문제가 있다는 것을 확인했다.

올바른 예시는 다음과 같다.

<!-- Maven 이라면 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>


<!-- Gradle 이라면 -->
implementation 'org.springframework.boot:spring-boot-starter-validation'

 

AS-IS에서는 아래와 같이 쓰고 있었는데 잘못된 것인가보다.. 라이브러리는 이상없이 당겨왔고 빌드도, 기동도 이상이 없음에도 정상동작하지 않는다..

implementation group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'

 

상기 표기처럼 수정하고 빌드해주고 디버깅해보니 정상적으로 동작함을 확인했다.

 

+ Recent posts