[점프 투 스프링]@valid가 제대로 작동하지 않습니다.
implementation 'org.springframework.boot:spring-boot-starter-validation'
package com.mysite.sbb.question;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class QuestionForm {
@NotEmpty(message="제목은 필수항목입니다.")
@Size(max=200)
private String subject;
@NotEmpty(message="내용은 필수항목입니다.")
private String content;
}
@PostMapping("/create")
public String questionCreate(@Valid QuestionForm questionForm, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return "question_form";
}
//this.questionService.create(questionForm.getSubject(), questionForm.getContent());
return "redirect:/question/list";
}
해당 디펜던시 넣고 유효성 폼도 생성했는데도 불구하고 자꾸 유효성 검사가 안됩니다.
@valid가 안되는 건지, if문이 안 먹는건지 잘 알수가 없네요...
혹시 해당 오류 일어나는 이유 알려주실수 있을까요?(추가 정보 필요시 말씀드리겠습니다)
참고로 환경은 sts4, mac m1쓰고있습니다.
kari 님 1071
M 2023년 10월 8일 5:56 오후
값을 비우고 post했을 때 bindingResult.hasErrors() 가 false로 리턴되나요?
-
박응용님,
2023년 10월 8일 6:25 오후
추천
,
대댓글
@박응용님 네 확인해보니까 false로 리턴됩니다
-
kari님,
2023년 10월 8일 6:35 오후
추천
,
대댓글
@kari님 그렇다면 questionForm에 담긴 subject, content에 실제로 값이 담겨 있는지 확인해 보세요.
-
박응용님,
2023년 10월 8일 8:07 오후
추천
,
대댓글
@박응용님 네 담겨있었습니다. 그리고 해결했습니다. 코드에는 문제가 없었고, 로컬서버를 다시 재시작하는 수순에서 뭔가 제 실수가 있었던 것 같습니다.
아예 서버를 끄고 다시 해보니까 제대로 동작하네요;; 답변 감사드립니다.
-
kari님,
2023년 10월 8일 8:29 오후
추천
,
대댓글