[VRaptor] Tratar exceções durante binding dos parametros de um Controller

Ahe galera!

Nos seters das minhas classes de negócio eu ja faço a validação de alguns campos e jogo exeções no caso de algum valor invalido.
Gostaria de sabe como posso capturar essas exeções e retornar para o formulario anterior no lugar de receber uma exception na tela (error 500).

Grato

anote as classes das suas exceções com @ValidationException, assim o VRaptor vai adicionar erros de validação ao invés de lançar as exceções

Funcionou!

Tem como eu pegar o erro de cada campo??? por exemplo errors[‘obj.campo’]

isso, estará dentro do errors,

error.category vai ser o nome do parametro que vc tava tentando setar

error.message vai ser a mensagem da exception

[]'s

Galera, aproveitando o tópico, estou querendo fazer o mesmo. Não quero receber um Error 500 na tela.

Por exemplo, eu tenho um método add em um controller, e ao tentar adicionar por alguma razão que seja, é lançada uma exception AdicionarException.
Pra eu não receber o Error 500 na tela, eu devo anotar essa AdicionarException com @ValidationException? Pois eu anotei, mas não deu certo.

Devo tratar com try e catch mesmo?

pro @ValidationException funcionar ele tem que ser lançado em algum dos setters dos caras que são recebidos no método do controller (preenchidos com parametros do request)

Entendi Lucas, é que no meu caso é diferente, não é um exception lançada por não passar na validação, e sim por algum outro motivo, erro de conexão, algo assim, entendeu?
Há alguma forma de não receber o erro 500 sem precisar tratar com try e catch no controller?

ao invés de dar erro 500 vc quer fazer o que? erro de validação?

vc pode fazer um try…catch num interceptor e fazer o que vc quer…

só cuidado pq a exception pode estar encapsulada dentro de um InterceptionException

Tem razão, verdade cara, posso fazer um interceptor!
Vou testar aqui!

Obrigado!