Bom dia prezados,
Estou com um problema relacionado ao plugin do VRaptor para Hibernate4.
O problema ocorre quando acontece um erro na transação, que como ocorre após o escopo do controller, eu não consigo tratá-lo.
Por ajax, a resposta é 200, informando um fake success.
Em outras requisições o stack do erro aparece, sem possibilidade de tratá-lo.
Eu cheguei a criar um interceptor pra tratar exceptions que fique antes do interceptor do plugin na pilha de execução, mas ele não serve pra tratar as respostas ajax, já que quando tento adicionar a mensagem não é possível porque ocorre um ResultException pois uma resposta de sucesso já foi criada antes, já que o salvar ocorreu com sucesso (pois como disse: o erro só ocorre no commit).
Não consigo desabilitar o plugin e tratar a transação na mão para estes casos porque o accepts do mesmo é sempre true.
A única forma que consegui fazer é justamente removendo o plugin do classpath e tratar a transação manualmente.
Alguém tem alguma sugestão?