2016-12-30 4 views
1

В Spring MVC, я аннотированный мой родитель DTO и список дочерних Dto с аннотациями боба проверки, как показано ниже:Spring аннотацию проверки и индексации для вложенных объектов

class ParentDto { 
    @NotBlank 
    private String parentName; 
    @Valid 
    private Set<ChildDto> childList; 
    //getter and setter 
} 

class ChildDto { 
    @NotBlank 
    private String childName; 
    //getter and setter 
} 

Если ChildName пуст в одном ребенка объекты, то пружина возвращает сообщение об ошибке, как показано ниже, без индекса дочернего объекта:

[{"errorCode":"NotNull","field":"parentDto.childList[].childDto ","message":"may not be null"}] 

Как я могу позволить весной вернуть сообщение с индексом (говорит, какие у ребенка есть проблемы) что-то вроде ниже:

[{"errorCode":"NotNull","field":"parentDto.childList[1].childDto ","message":"may not be null"}] 

ответ

0

Я понял, почему в сообщении об ошибке отсутствует указатель. Поскольку я использовал Set вместо List для коллекции дочерних объектов, он не смог его индексировать. После изменения списка он отлично работает.