Membro desde: 11/02/2009 13:17:13
Mensagens: 62
Offline
o StaleObjectStateException acontece ele é printado na stack trace, o funcionamento dele tá ok (estamos testando a concorrência e até agora tudo ok) o problema tá sendo pegar ele no Interceptor pra jogar um erro legal pro usuário senão me engano a árvore do StaleObjectStateException é "StaleObjectStateException->StaleStateException->HibernateException->RuntimeException->..." e o RollbackException é "javax.algumacoisa"
This message was edited 2 times. Last update was at 13/06/2011 09:32:07
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
o problema é que antes de chegar em vc está passando pelo interceptor de transações, e ele tá tentando dar o commit de uma transação que já estava marcada como rollback only.
use a última versão do VRaptor e anote seu interceptor da StaleObject com:
assim a exception vai passar antes (na volta) pelo seu interceptor
Membro desde: 11/02/2009 13:17:13
Mensagens: 62
Offline
quem está controlando as transações é o Spring
será que tem jeito de pegar o StaleObjectStateException via Interceptor?
ficaria perfeito pra mim pois já tenho um Interceptor para erros genéricos que faz isso (o que recebe o objeto "Exception exception")
aí seria apenas adicionar mais um catch no try
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
vc está usando o @Transactional então, certo?
o problema é que ele tá escondendo a exception, não sei se vc vai conseguir capturá-la de um jeito legal...
pq vc quer fazer isso mesmo? vc vai conseguir se recuperar do erro? ou é só logging?
Membro desde: 11/02/2009 13:17:13
Mensagens: 62
Offline
isto
estou utilizando "@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)"
eu vou me recuperar do StaleObjectStateException e mostrar uma mensagem pro usuário: "Este registro foi atualizado por outro usuário, recarregue os dados e tente novamente."
essa vai ser a mensagem padrão pra quando algum erro de concorrência acontecer
e eu tb não to conseguindo pegar o StaleObjectStateException direto do meu Controller
tah foda
This message was edited 1 time. Last update was at 13/06/2011 16:30:23