Olá pessoal, queria saber da opinião de vocês quanto a validação de dados nas camadas.
Cenário Arquitetural:
Modelo - EJB (JPA)
Controle e Visão - JSF
A dúvida é relativa a validação de dados do tipo String.
Baseado nas camadas mostradas acima, é feita uma validação nos campos de texto para que não exceda o tamanho máximo da string no banco de dados (varchar), até aí tudo bem, usa-se as formas disponíveis pelo JSF para fazer essa validação, porém quando esses ejb’s são acessados de outros sistemas por exemplo, que não uma camada de visão, essa validação deverá ser feita na entidade também?
Eu creio que sim, porém daria um bocado de trabalho validar esses atributos do tipo string na visão e no modelo, por outro lado, nos casos em que o acesso aos ejbs partem de outros sistemas, evitaria uma exceção na hora de inserir ou atualizar informações no banco de dados.
Qual a experiência de vocês nesse caso, vale pena escrever mais para validar de uma forma completa?
Ou deixa estourar e exceção no banco e valida somente no jsf?
Sem mais.
Grato.
