[SPRING] 400 Hibernate @Valid가있는 잘못된 요청
SPRING400 Hibernate @Valid가있는 잘못된 요청
내 양식의 유효성을 검사 할 때 이상한 행동이 있습니다.
Hibernate @Valid 어노테이션을 추가하자마자, Tomcat은 게시 된 데이터가 유효하지 않으면 "bad"라고 요청했다. 데이터가 유효하다면 걱정할 필요가 없습니다.
나는 사용한다:
지금은 매우 간단한 검증을 수행합니다.
public class RemoveCacheElementForm {
@NotBlank(message = "Please select a cache name.")
private String name;
@NotBlank(message = "Please select a cache entry key.")
private String key;
스프링 컨트롤러 :
/**
* Handler to remove one cached elements from the specified cache.
*
* @return the view.
*/
@RequestMapping(value = CACHE_REMOVE, method = RequestMethod.POST)
public String removeCachedElement(ModelMap model, @Valid @ModelAttribute(FORM_NAME) RemoveCacheElementForm form) {
model.addAttribute("removeElementResult", CacheUtils.removeCachedElement(form.getName(), form.getKey()));
initializeModel(model);
return CACHE_ADMIN_PAGE;
}
@Valid 주석을 제거하면 걱정할 필요가 없습니다.
누구나 아이디어가 있으십니까?
도와 주셔서 정말로 고맙습니다! :-)
해결법
-
==============================
1.코드를 다음과 같이 변경하십시오.
코드를 다음과 같이 변경하십시오.
@RequestMapping(value = CACHE_REMOVE, method = RequestMethod.POST) public String removeCachedElement(ModelMap model, @Valid @ModelAttribute(FORM_NAME) RemoveCacheElementForm form, BindingResult bindingResult) { model.addAttribute("removeElementResult", CacheUtils.removeCachedElement(form.getName(), form.getKey())); initializeModel(model); return CACHE_ADMIN_PAGE; }
from https://stackoverflow.com/questions/23202788/400-bad-request-with-hibernate-valid by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring 프로파일을 패키지로 설정하는 방법은? (0) | 2019.05.11 |
---|---|
[SPRING] JPA와 Hibernate로 SQL 함수 등록하기 (0) | 2019.05.11 |
[SPRING] Spring을 초기화 할 때 NullPointerException이 발생하는 이유는 무엇입니까? (0) | 2019.05.11 |
[SPRING] 다른 Spring 컨텍스트간에 Spring 빈을 어떻게 공유합니까? (0) | 2019.05.11 |
[SPRING] 속성을 통해 Spring Scheduler Task 사용 안함 (0) | 2019.05.11 |