1
웹 응용 프로그램 중 하나에서 Spring 유효성 검사 (JSR 303)를 사용하고 있습니다. 사용자가 데이터를 제출하고 스프링 유효성 검사가 매우 정교하게 작동하면 아무런 문제가 없습니다. 서비스에서 데이터를 가져 와서 유효성을 검사 한 다음 내 뷰에 바인딩해야합니다 (형식이 아닌 무언가 유효성 검사).이 경우 @Valid를 어떻게 사용할 수 있습니까? 아니면 다르게 수행해야합니까? 여기 DB의 데이터에 대한 @Valid 및 바인딩 결과
내가 시작, 샘플 코드@RequestMapping(value = "/{id}", method = RequestMethod.GET)
public ModelAndView getView(
@PathVariable("id") final String id, @User user,
HttpSession session) {
User user= getUser();
BindingResult result = new BeanPropertyBindingResult(user, "user");
validator.validate(user, result);
if(result.hasErrors()){
logger.log(Level.ERROR, "Errors");
}
ModelAndView view = new ModelAndView ("home");
view.addObject("user",user);
view.addAllObject(result.getModel());
return view;
덕분에 내 changes.I이 핸들러 처리에 실패 얻고 포함하는 내 게시물을 업데이트 한 다음
ModelMap
에 결과를 병합 D (당신의 메소드의 인수로 선언); 중첩 예외는 java.lang.NoSuchFieldError : org/apache/log4j/Level.TRACE.I입니다. 내 maven 종속성을 확인하고 모든 Spring jars (3.1.0)에 대해 동일한 릴리스를 사용하고 있습니다.이 오류에 대해서는 알 수 없습니다. – user874722log4j가 종속 항목 중 하나입니까? v1.2.x 이상? – sdouglass
죄송합니다. 여기서 진행 상황을 업데이트 했어야합니다. 그래, 내 maven에서 slf4j 및 log4j를 사용하고있었습니다. 나중에 제거해야합니다. 이제 유효성 검사기에서 오류를 볼 수 있으며 바인딩 결과를 내 모델에 설정했습니다. 그리고 View 하지만 오류 JSP로 반영되지 않습니다, 나는 코드로 initail 게시물을 업데이 트했습니다. – user874722