Могу ли я переопределить аннотацию проверки jsr-303

У меня есть тест, как показано ниже:

public class TestSizeAnnotation
{
public static void main(String[] args)
{
    System.out.println(
            Validation.buildDefaultValidatorFactory().getValidator().validate(new C()));
}

public static class P 
{
    private List lst = newArrayList("AA");
    @Size(max=0, message="P")
    public List getLst()
    {
        return lst;
    }
    public void setLst(List lst)
    {
        this.lst = lst;
    }
}
public static class C extends P 
{
    @Override
    @Size(max=5, message="C")
    public List getLst()
    {
        return super.getLst();
    }

}
}

со следующим результатом:
[ConstraintViolationImpl {interpolatedMessage = 'P', propertyPath = lst, rootBeanClass = class com .... validator.TestSizeAnnotation $ C, messageTemplate = 'P'}]

Однако я ожидал, что аннотация может @Size будет переопределено, и никаких предупреждений не будет.
Есть ли способ добиться этого?

РЕДАКТИРОВАТЬ: Я обнаружил ошибку , похоже, связанную с этим, но я запускаю 4.2.0 final и все еще получаю указанное выше поведение.

9
задан oshai 30 January 2012 в 20:53
поделиться