Tratamento de erro - Spring + JPA

0 respostas
F

Olá pessoal,

Estou tendo um problema ao qual não consegui ainda pensar em uma solução que me pareça correta… procurei na internet mas também não tive sucesso !
É o seguinte… No projeto uso Spring e JPA + Hibernate

Possuo um DAO Genérico ao qual por exemplo possuo o método delete :

@Override
	@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
	public void delete(T object) {
		object = this.getEntityManagerFactory().merge(object);
		this.getEntityManagerFactory().remove(object);
	}

O problema é que o método remove do JPA gera uma exceção Runtime, então gostaria de trata-la nesse momento e gerar uma exceção minha obrigando as outras classes a tratar a exceção para poder gerar mensagens amigaveis ao usuário …

A questão é que como é com Spring e é feita a injeção dessa classe nas outras, eu não consigo capturar as exceções dentro do método delete no DAO, apenas no Service, nó metodo que chama o delete do DAO …

Existe alguma solução para isso, ou realmente em classes injetadas não é possivel tratar as exceções ?

Alguém pode me explicar isso melhor ?

Valeu,
Abraços

Criado 15 de março de 2012
Respostas 0
Participantes 1