1
resposta

Campo números de página do tipo Int

    @Override
    public void validate(Object target, Errors errors) {
        ValidationUtils.rejectIfEmpty(errors, "titulo", "field.required");
        ValidationUtils.rejectIfEmpty(errors, "descricao", "field.required");

        Produto produto = (Produto) target;

        if(produto.getPaginas() <= 0) {
            errors.rejectValue("paginas", "field.required");
        }
    }

}

Aluleiros, o tipo na minha classe Produto é int pagina, quando mudo o tipo para Integer a minha validate não consegue pegar e apresenta erro de NullPointException. O que posso fazer para que além do tipo int ele possa Validar também o Integer.

1 resposta

Luciano,

Quando você declara um atributo como INTele assumi o valor default 0 então todas as vezes que criar uma nova instância dessa classe produto o valor do atributo pagina será 0, porém o mesmo atributo como INTEGER ao instanciar a classe ele será NULL.

Eu acredito que o seu erro acontece na linha do IF. Então se vc verificar se o valor de pagina for null, já deve resolver isso.

if(produto.getPaginas() == null && produto.getPaginas() <= 0) {
errors.rejectValue("paginas", "field.required");
}