Como validar com j2ee

8 respostas
I

Pessoal,

Tenho uma dúvida sobre validações. Estou desenvolvendo um projeto de sistema de gestão acadêmica e na hora de fazer as validações pensei em fazer da seguinte maneira: crio uma classe para validacoes, esta classe tem um método que recebe o objeto a ser validado, verifica que tipo de objeto é e passa a fazer as validações de acordo com cada tipo de objeto e depois retorna as mensagens de erro em um array.

Está correto isso ou está fora dos padrões MVC? Sei que tem outros jeitos de validar usando Hibernate etc… Mas este está correto?

Abraços

8 Respostas

Hebert_Coelho

Desculpe a pergunta mas… Oq é validação no seu sistema? Comparar se um objeto é igual ao outro?

I

Não, quero verificar se a idade por exemplo é maior que 0, ou menor que 120, se nome não está em branco etc . . .
Não quero fazer isso via javascript por que se não o usuário desabilita e bye bye validação.

Abraços

aluisiodsv

aUHUAhuaUHUaUH … está certo. Validação em javascript não dá.
Se vc estiver usando algum framework, provavelmente ele vai ter algum suporte para isto.
Se não estiver usando, pode validar do jeito q achar melhor. Vc não estaria seguindo nenhum padrão.

Hebert_Coelho

Cara, para isso basta no seu servlet quando vc receber o request encaminhar para um método que seja capaz de tratar essas informções.

Por exemplo, vc está indo fazer o cadastro e após o cara finalizar o cadastro ele envia a requisição para “/realizaCadastro.do”.

Basta nesse servlet vc validar. Mas como o aluisiodsv falou, é melhor pegar algum framework para fazer isso para vc. [=

I

Mas o problema é que eu ainda não conheço nenhum frame, estou fazendo tudo na raça mesmo. Sei que preciso estudar isso mas não estou tendo tempo nem nos fds. Tá cruel de trabalho e facul. A minha dúvida era se fazer isso via servlet ou a própria classe chamar outra classe que faça a validação seria correto.

Abraços

Hebert_Coelho

Bem, o modo mais fácil de fazer isso é quando a requisição vier do jsp e chegar ao servlet, vc já valida ali mesmo.
Vamo fazer um troço bonito então.
Cria uma classe abstrata:

public abstract class Validacoes{}

Nessa classe vc colocaria alguns métodos do tipo:

public boolean eUmaStringValida(String str){ // Implementa seu código }
Nisso vc teria um validaData, validaNumero e assim vai.
No seu servlet vc faz

String nome = request.getParameter("nome"); if (!Validacoes.eUmaStringValida(nome)){ // volta para o site para tratar as informações }

Vc teria uma “central” de validações.

Oq acha?

Hebert_Coelho

OBS.: Vc chamaria essa classe para todo campo obrigatório sacou? Vamo supor que o cara seja obrigado a preencher uma data de aniversário, aí vc chamaria o método de validar se a data é valida.

I

Sim, boa idéia, farei isso e depois posto o código para vc me dizer o q acha.

Abraços

Criado 10 de agosto de 2010
Ultima resposta 11 de ago. de 2010
Respostas 8
Participantes 3