Я использую аннотацию DropWizard (версия 0.9.2) @OneOf, чтобы разрешить только определенный список значений для поля в классе сущности.
Ниже приведен код ресурса
@POST
@Timed
@Path("/validation")
public Response validation(@Valid Map<String, Map<String, Fruit>> fruits) {
И класс Fruit, как показано ниже
public class Fruit {
@OneOf(value = {"apple", "mango", "orange"}, ignoreCase = true)
private String name;
}
А ниже приведен пример данных о недопустимых запросах, которые должны возвращать исключение из проверки, но это не так.
{"1": {"123": {"name": "appple"}}}
{"1": {"123": {"name": "grape"}}}
К вашему сведению, он работает нормально, еслиобъект запроса не является вложенным, но в тот момент, когда я делаю запрос, как указано выше, он перестает возвращать исключение из проверки.
Пожалуйста, предложите, если я что-то здесь упустил.