2014-09-01 4 views
0

부모 관리 리소스 (Spring ResourceSupport 클래스를 확장하는 AdminResource)를 비어 있지 않은 것으로 (@NotEmpty) 확인하는 지침을 찾고 있습니다. 하위 관리 모듈 자원 (Spring ResourceSupport 클래스를 확장하는 AdminModuleResource).하위 리소스에서 비어 있지 않은 속성으로 Spring ResourceSupport-ed 부모 리소스 유효성 검사

AdminResource 클래스도 Serializable 인터페이스를 구현해야한다는 것을 알고 있습니까? 이것이 Spring ResourceSupport-ed 리소스로가는 길입니까? 여기

내 자원입니다 : 지금 현재로

public class AdminResource extends AbstractResource { 

    private String firstname; 
    private String lastname; 
    @NotEmpty 
    @Email 
    private String email; 
    private String password; 
    private String passwordSalt; 

} 

public class AdminModuleResource extends AbstractResource { 

    @NotEmpty 
    private String module; 
    @NotEmpty 
    private AdminResource adminResource; 
} 

public abstract class AbstractResource extends ResourceSupport { 

    @JsonProperty("id") 
    private Long resourceId; 

    public AbstractResource() { 
    } 

    public Long getResourceId() { 
     return resourceId; 
    } 

    public void setResourceId(Long resourceId) { 
     this.resourceId = resourceId; 
    } 

} 

의 @NotEmpty 유효성 검사기 주석이 나에게 오류를 제공 : 없음 검증이

그러나이 추가은 "Serializable를 구현 ... 종류를 찾을 수 없습니다 "가 도움이되지 않았고 @NotEmpty 유효성 검사기 주석을 사용할 때 예외가 남아있었습니다.

public abstract class AbstractResource extends ResourceSupport implements Serializable { 
} 

물론 @NotEmpty 유효성 검사기 주석을 주석 처리하면 Maven 빌드가 성공적으로 완료됩니다.

모든 방향 안내 주셔서 감사합니다!

친절 감사를

스테판

답변

1

@NotEmpty은 CharSequences (문자열), 컬렉션,지도 및 배열 지원됩니다. 문자열 또는 콜렉션/배열이 비어 있는지 여부를 검사합니다. AdminResource가 비어 있지 않다는 것을 의미하는 것은 무엇입니까? @NotNull을 의미합니까?

AdminResource에 대해 @NotEmpty를 갖는 것이 의미 론적으로 의미가 있다면 사용자 정의 ConstraintValidator를 구현하고 XML을 통해 등록해야합니다 (http://beanvalidation.org/1.1/spec/#xml-mapping-constraintdefinition 참조).

+0

빈 리소스를 생각하는 것은 실제로 의미가 없습니다. 대신 @NotNull 주석을 사용합니다. – Stephane