Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Devo fazer as validações tanto na view quanto no modelo?

Nessa aula foi mostrado como validar alguns campos usando os validadores do JSF. Existe a necessidade de validar o modelo ao utilizar por exemplo o required e validateLength?

Eu preciso fazer as verificações abaixo?

public class Livro {
    private String titulo;

    public void setTitulo(String titulo) {
        if(titulo == null) {
            throw new NullPointerException("O título é obrigatório");
        }

        if(titulo.length() < 4 ) {
            throw new IllegalArgumentException("O título deve ter no mínimo 4 caracteres");
        }

        this.titulo = titulo;
    }

}

Ou bastam essas validações:

<h:inputText value="#{livroBean.livro.titulo}" required="true" requiredMessage="O título é obrigatório " validatorMessage="O título deve ter no mínimo 4 caracteres">
    <f:validateLength minimum="4" />
</h:inputText>
2 respostas
solução!

Oi Luan, tudo bem ?

Ambas as formas são bem boas, em uma você está fazendo a restrição no modelo, que é super legal, pensando em OO

Enquanto na outra, você está usando o seu framework para fazer isso, que é ótimo também, o único problema é que se você quisesse trocar de framework, por exemplo pra spring, você acabaria perdendo essa validação, que pode ser uma regra de negócio.

Valeu Matheus!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software