2014-04-22 5 views
0

그들을 결합 당신은 괜찮아요 : 나는 스프링 MVC에서 JSON 객체를 제출 잭슨을 사용하고잭슨, 최대 절전 모드 검사기, 그리고 봄 MVC : 함께 나는 희망

public class UserDTO extends AbstractDTO implements Serializable { 

    private static final long serialVersionUID = -2724997313065531109L; 

    @NotNull 
    @Pattern(regexp = "^[a-zA-Z0-9_\\.]+$") 
    @Length(min = 3, max = 30) 
    private String userName; 

    @NotNull 
    @Email 
    @Length(min = 3, max = 30) 
    private String email; 

    @NotNull 
    @Length(min = 6, max = 30) 
    private String password; 

    private String gender; 

    @Digits(fraction = 0, integer = 13) 
    @Length(min = 8, max = 20) 
    private String mobile; 

    @Length(min = 6, max = 30) 
    private String confirmPassword; 

    @NotNull 
    @Past 
    private Date birthDate; 

, 또한 내가 최대 절전 모드 검사기를 사용하고 있습니다. 위의 DTO를 들어

, 나는 이름 길이 JSON 개체를 보내려고 할 때하는 클래스 @Length (분 = 3, 최대는 = 30)는, 내가 가진 HTTP 400의 최소 길이보다 짧은 잘못된 요청. 최대 절전 모드 유효성 검사의 주석이 Jackson과 밀접하게 결합 된 이유는 무엇입니까? 이 오류를 제거하려면 어떻게해야합니까?

은 사전에 감사합니다 : D

+0

귀하의 컨트롤러 처리기를 게시하시기 바랍니다 – gipinani

+0

가능한 복제본 [json 요청이 400 잘못된 요청 오류가있을 때 @ 유효하지 않습니다 @] http://stackoverflow.com/questions/17183102/spring3-doesnt-work-valid -when-json-request-i-400-bad-request-error) – gipinani

+0

@RequestMapping(value = "/register", method = RequestMethod.POST, headers = { "Content-type=application/json" }) public String registerUser(@Valid @RequestBody final UserDTO userDTO, \t \t \t final HttpSession session, final HttpServletResponse response, \t \t \t final HttpServletRequest request, final ModelMap model, \t \t \t final BindingResult bindingResult) { Elbassel

답변

0

다음 링크에서 : http://ppettitau.wordpress.com/tag/requestbody/ , 당신은 최대 절전 모드 검사기, Jacson 및 스프링 MVC를 결합하는 방법을 찾을 수 있습니다. 링크가 완전한 요청 수명주기를 제공하고 있으며 클라이언트가 AJAX 방식으로 요청을 보내고 응답을 수신합니다. 응답에는 사용자에게 표시 할 오류 메시지가 포함되어 있습니다.