내 질문은 Resteasy Bean Validation Not Being Invoked과 유사합니다. 그러나 솔루션은 작동하지 않습니다.Resteasy Bean 유효성 검사가 다시 호출되지 않음
resteasy-validator-provider-11과 함께 Resteasy 3.0.9.Final을 사용하고 있습니다. 커스텀 Jetty 클래스를 사용하여 모든 것을 시작합니다.
@PathParams에서는 이상하게 작동하지만 bean에서는 유효하지 않습니다.
@POST
@Path("/foo/{myParam}")
public Message post(MyBean myBean, @PathParam("myParam") @Size(min=5) String myParam) {
return new Message("bean:" + myBean.toString());
}
public static class MyBean {
@NotNull
public String myStr;
@Max(value = 3)
public int myInt;
public String toString() {
return myStr + myInt;
}
}
이 경우 myParam의 @Size 제약 조건은 정상적으로 작동합니다. 그러나 MyBean의 @NotNull 및 @Max 제약 조건은 호출되지 않습니다.
어노테이션이 누락 되었습니까?
여기에 단서가 하나 있습니다. 문제는 당신이 MyBean
매개 변수에 @Valid
누락하고 있다는 것을,
2014-12-30 12:16:56 org.hibernate.validator.internal.util.Version 6446 INFO HV000001: Hibernate Validator 5.0.1.Final
2014-12-30 12:16:56 org.jboss.resteasy.plugins.validation.AbstractValidatorContextResolver 6477 INFO Unable to find CDI supporting ValidatorFactory. Using default ValidatorFactory
링크 된 링크는 resteasy의 베타 버전입니다. 코드는 어떤 방식 으로든 최종본이 아닙니다. –