Проверка JSR 303 весной - как отказаться от строки числа, когда поле должно принимать только целое число - PullRequest
0 голосов
/ 31 января 2019

Когда я проверяю сущность формата JSON в теле запроса, числовое поле появляется как строка числа, доступного для Integer, принимается как действительный.Но я хочу проверить, что он содержит только число, и отклонить любую строку, может быть проанализирована или нет.

Но я думаю, что проверка JSR 303 не различает числа или числа в строке.

Например, она должнабыть:

{
    "quantity": 1,
    ...
}

, но когда это:

{
    "quantity": "1",
    ...
}

ошибка не обнаружена.

Проверка выполняется следующим образом:

@NotNull(message = "order item quantity is required")
@Digits(integer = Integer.MAX_VALUE, fraction = 0) // only integer
@PositiveOrZero
@ApiModelProperty(value = "Order Item quantity", required = true) // for Swagger UI
@JsonProperty("quantity")
private Integer quantity;

Обратите внимание, что @Pattern применяется только к последовательностям символов.

...