I can not get the default validation message

I have a controller

@PutMapping(value = "/changeEmail", consumes = MediaType.APPLICATION_JSON_VALUE)
public HttpEntity<ChangeEmailDTO> showChangeEMail(
        @RequestBody @Valid ChangeEmailDTO changeEmailDTO
) {
    System.out.println("Email: " + changeEmailDTO.getEmail());

    return ResponseEntity.ok(changeEmailDTO);
}

If the user has given bad data then throws a MethodArgumentNotValidException exception.
I created an exception handler

@ExceptionHandler(MethodArgumentNotValidException.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
@ResponseBody
public ValidationErrorDTO processValidationError(MethodArgumentNotValidException ex) {
    BindingResult result = ex.getBindingResult();
    List<FieldError> fieldErrors = result.getFieldErrors();

    return processFieldErrors(fieldErrors);
}

private ValidationErrorDTO processFieldErrors(List<FieldError> fieldErrors) {
    ValidationErrorDTO dto = new ValidationErrorDTO();

    for (FieldError fieldError: fieldErrors) {
        String localizedErrorMessage = resolveLocalizedErrorMessage(fieldError);
        dto.addFieldError(fieldError.getField(), localizedErrorMessage);
    }

    return dto;
}

private String resolveLocalizedErrorMessage(FieldError fieldError) {
    Locale currentLocale =  LocaleContextHolder.getLocale();
    String localizedErrorMessage = messageSource.getMessage(fieldError, currentLocale);

    //If the message was not found, return the most accurate field error code instead.
    //You can remove this check if you prefer to get the default error message.
    if (localizedErrorMessage.equals(fieldError.getDefaultMessage())) {
        String[] fieldErrorCodes = fieldError.getCodes();
        localizedErrorMessage = fieldErrorCodes[0];
    }

    return localizedErrorMessage;
}

One of the fields has validation created by me

    @Documented
@Constraint(validatedBy = EmailValidator.class)
@Target( {ElementType.FIELD} )
@Retention(RetentionPolicy.RUNTIME)
public @interface IsValidEmail {

    String message() default "Please enter a valid e-mail address.";

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

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

And replace the default message in the properties file

IsValidEmail.changeEmailDTO.email=Please enter a valid e-mail address.

However, in the json data in the response is

{"fieldErrors"[{"field":"email","message":"IsValidEmail.changeEmailDTO.email"}]}

Why?