Ajuda com VRaptor + Exceptions

1 resposta
neguinho.etav

Opa galera,

Estou fazendo um projeto com VRaptor que é o seguinte:

Eu recebo um Json na requisição e preciso validar se os dados mínimos pra requisição prosseguir foram atendidos. Caso estes dados mínimos não estejam presentes na requisição, eu preciso retornar 1 exceção (ou um novo JSon) com a mensagem de erro. Ex:

{ data:{ campo1: texto, campo2: texto2 } }

e eu precisaria que um campo3 existisse nesse JSon. Nesse caso, precisaria que fosse lançada 1 exceção ou retornado 1 JSon com o seguinte erro:

Exceção:
ERRO: 001 - campo não informado

JSon:

{ erro: { codigo: 001, mensagem: campo não informado } }

Alguém poderia me ajudar em como fazer isso?

Notei que a Interface Validator tem 1 método onErrorSendBadRequest(). Não sei se é este que devo usar.

Quaisquer das soluções são bem vindas.

Outra coisa, como faria pra testar essas validações com o JUnit?

Agradeço desde já

1 Resposta

Lucas_Cavalcanti

cara, vc pode até usar o validator, mas talvez vc tenha que converter as mensagens de validação do VRaptor pro formato que vc quer…

talvez o mais fácil seja fazer com ifs mesmo:

if (jsonInvalido) {
   result.use(json()).from(erro).serialize();
} else {
    result.use(json()).from(coisaCerta).serialize();
}

pra testar validações vc pode usar o MockValidator, que solta exception caso há erros.

Criado 20 de março de 2012
Ultima resposta 21 de mar. de 2012
Respostas 1
Participantes 2