2014-03-26 3 views
0

Beans Validation 1.0의 URL 필드에 대한 사용자 정의 유효성 검사기를 어떻게 만들 수 있습니까? 그러나 JSON을 통해 전달 된 URL 문자열을 제약 조건 유효성 검사기로 전달하는 방법은 무엇입니까? JEE6 Bean 유효성 검사 1.0 용 URL 유효성 검사기


@Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER}) 
@Retention(RUNTIME) 
@Constraint(validatedBy = {URLValidator.class}) 
@Constraint(validatedBy = {}) 
public @interface ValidURL { 

    String message() default "must be a valid URL"; 

    Class<?>[] groups() default {}; 

    Class<? extends Payload>[] payload() default {}; 
} 


public class URLValidator implements ConstraintValidator<ValidURL, CharSequence> {...} 
@ValidURL 
private URL myUrl; 

나는 최신 최대 절전 모드 검사기가 @URL 유효성 검사를 가지고 알고 있지만 나는 최신 버전으로 이동할 수 없습니다.

편집 : 위 내용을 통해 다음과 같은 결과를 얻었습니다. 그래서 내 질문에 최대 절전 모드에서 ConstraintValidator에 의해 사용되는 CharSequence URL 형식을 변환하는 방법입니다?

javax.validation.UnexpectedTypeException: HV000030: No validator could be found for type: java.net.URL. 
+0

입력을위한 실현? 사용자 지정 제약 조건을 작성하는 방법을 알고있는 것 같습니다. JSON 요청에서 Java 모델로 URL을 가져 오는 방법은 사용중인 프레임 워크에 따라 다릅니다. 이에 대한 정보는 여기에 제공하지 않습니다. 또한, Hibernate Validator의 @URL 제약은 4.x 버전에서도 사용 가능합니다. 그렇다면 왜 그것을 사용할 수 없습니까? – Hardy

답변

0

도현, 그냥 최대 절전 모드 유효성 검사기 @URL는 문자열이 실제로 무엇을 요구하고하지의 java.net.URL