Fórum

« Voltar para demoiselle-users

[demoiselle-users] Erro dentro de um método Transacional

Visualização combinada Visão plana Exibição em árvore
Tópicos [ Anterior | Próximo ]
Oi!


Estou com dificuldade de resolver de forma satisfátorio um problema que ocorre ao remover uma Entidade que já esteja referenciada, ou seja, remover um Pais que já esteja associado a um Estado por exemplo.
O Banco de dados retorna um erro de violação de chave estrangeira.
Assim, a Exceção é capturada pela transação e eu não consigo trata-la de forma adequada.
Uma forma que encontrei foi remover a anotação @Transactional e adicionar um @ExceptionHandler
Mas não considero ser uma boa prática trabalhar em um ambiente que não seja transacional.
O Mesmo problema ocorre quando implemento @Version para controle de concorrencia.

Alguma sugestão?


@ExceptionHandler
public void tratador(RollbackException cause) {
messageContext.add(resourceBundle.getString("remove.error"), SeverityType.ERROR);
}


@Override
@Transactional
public String delete() {
this.paisBC.delete(getId());
return getPreviousView();
}


Abraço


Tales Spadini
--------------------------
Gerente de TI
www.criare.inf.br
------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your productivity
• Requirements for releasing software faster
• Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________

Portal: http://www.frameworkdemoiselle.gov.br
Foruns: http://forum.frameworkdemoiselle.gov.br
Tracker: http://tracker.frameworkdemoiselle.gov.br
_______________________________________________

Para editar sua assinatura:
https://lists.sourceforge.net/lists/listinfo/demoiselle-users