Integer 타입에는 @NotBlank가 아닌 @NotNull을 사용

김학준·2024년 6월 17일
0

게시판

목록 보기
10/44

문제 상황

공지사항 게시글 작성에서 제목과 내용을 작성 후 전송 버튼을 눌렀더니 다음과 같은 오류가 발생했다.

오류 메시지

HV000030: No validator could be found for constraint 'javax.validation.constraints.NotBlank' validating type 'java.lang.Integer'.
Check configuration for 'boardTypeSeq'

오류 발생 부분

RestNoticeController.java 일부

@Slf4j
@RestController
@RequiredArgsConstructor
public class RestNoticeController {
	private final BoardService boardService;

	@PostMapping("/forum/notice/write.rest")
	public BoardWriteDto write(
			@Valid @RequestBody BoardWriteDto boardWriteDto,
			BindingResult bindingResult,
			@SessionAttribute(name = SessionCookieConst.LOGIN_MEMBER, required = false) Integer memberSeq

BoardWriteDto.java 일부

@Data
public class BoardWriteDto {
	private int boardSeq;

	@NotBlank
	private int boardTypeSeq;

	@NotBlank
	@Size(min = 5, max = 50)
	private String title;

	@NotBlank
	@Size(min = 5, max = 1000)
	private String content;

	private int regMemberSeq;
}

해결 방법

@NotEmpty, @NotBlank와 같은 검증 애너테이션은 Integer에 사용할 수 없기 때문에 boardTypeSeq의 검증 애너테이션을 @NotNull로 바꿔주었다.

0개의 댓글