Проверка по параметру заголовка не работает - PullRequest
0 голосов
/ 16 мая 2019

У меня есть REST Controller, я хочу проверить один параметр заголовка. Я создал пользовательскую аннотацию для того же. Но проверка не вызывается. Мы добавили аннотацию @Validated на контроллер

Как проверить параметр в заголовке?

Метод контроллера:

@RestController
@RequestMapping("/ids/{id}")
@Validated
public class IdController {

@RequestMapping(value = "/", method = POST, produces = APPLICATION_JSON_VALUE)
  public ResponseEntity accept(@PathVariable(value = "id") String id,
                               @Valid  @RequestBody Request request,
                               @RequestHeader(value = mode) @ValidMode String mode) {

  }
}

Примечание:


@Target({FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER})
@Retention(RUNTIME)
@Constraint(validatedBy = ModeValidator.class)
public @interface ValidMode {
  String message() default "incorrect mode";

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

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

}

Validator

public class ModeValidator implements ConstraintValidator<ValidMode, String> {
  @Override
  public void initialize(ValidMode constraint) {

  }

  @Override
  public boolean isValid(String value, ConstraintValidatorContext context) {
   return false;
  }


}

Как проверить режим заголовка запроса?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...