I have a controller with POST method:
@RestController
@RequestMapping(value = "/creditDetails", produces = MediaType.APPLICATION_JSON_VALUE)
@RequiredArgsConstructor
@Validated
public class CreditDetailsController {
@ResponseStatus(HttpStatus.CREATED)
@PostMapping(consumes = MediaType.APPLICATION_JSON_VALUE)
public CreditDetailsResponse createCreditDetails(@RequestBody @Valid CreditDetailsRequestWithoutId request) {
return CreditDetailsResponse.convertToResponse(creditDetailsService.createCreditDetails(request));
}
}
And DTO:
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class CreditDetailsRequestWithoutId {
@DecimalMax("10_000_000")
private BigDecimal creditLimit;
@DecimalMin("0")
@DecimalMax("20")
private BigDecimal creditPercent;
private UUID bankId;
}
When I pass the CreditDetailsWithoutId instance with 111 percent I don't get any errors. Why my validation didn't work? If it matter i use
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
<version>2.6.3</version>
</dependency>