Duvida com Tratamento de Exceções Personalizadas entre Camadas

Java

27/10/2011

Galera gostaria de trazer a exceção até a view de uma forma amigável, como fazer?

método excluir
    public void excluir(T bean) {
	session.flush();
	session.clear();
	try {
	    session.delete(bean);
	} catch (ConstraintViolationException rd) {
	    // como vou capturar essa excption aqui ?
	    // Aqui ele não capturar a ConstraintViolationException, por isso
	    // disse que não funciona )
	    FacesContext faces = FacesContext.getCurrentInstance();
	    faces.addMessage(null, new FacesMessage(
		    FacesMessage.SEVERITY_FATAL, Aviso, rd.getMessage()));
	} catch (Exception e) {

	    FacesContext faces = FacesContext.getCurrentInstance();
	    faces.addMessage(null, new FacesMessage(
		    FacesMessage.SEVERITY_ERROR, Aviso,
		    Registro Filho tem pai.));
	}
    }


printstacktrace:
2011-10-27 08:28:42,059 ERROR [org.hibernate.util.JDBCExceptionReporter] - Cannot delete or update a parent row: a foreign key constraint fails (`studio`.`aluno`, CONSTRAINT `fk_aluno_cidade` FOREIGN KEY (`cid_codigo`) REFERENCES `cidade` (`cid_codigo`) ON DELETE NO ACTION ON UPDATE CASCADE)
2011-10-27 08:28:42,061 ERROR [org.hibernate.event.def.AbstractFlushingEventListener] - Could not synchronize database state with session
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96)
	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
Luciano Martins

Luciano Martins

Curtidas 0

Respostas

Davi Costa

Davi Costa

27/10/2011

Vc tem que descobrir qual realmente é a exceção que ele está trazendo. Debuga que vc descobre.
Ai vc fazer realmente o catch que ele vai entrar.


att Davi
GOSTEI 0
Luciano Martins

Luciano Martins

27/10/2011

entaum Davi o erro do stack é esse mas na hora q debugo o código ele naum entra em nenhum catch só no catch do listener, isso q naum entendi, tentei pegar a exceção do listener e naum consegui trazer pra view.
GOSTEI 0
Davi Costa

Davi Costa

27/10/2011

Faz seguinte cola o Stack Trace inteiro, para entendermos melhor o que está acontecendo.

att Davi
GOSTEI 0
Dyego Carmo

Dyego Carmo

27/10/2011

Conseguiste achar o stack ?
GOSTEI 0
POSTAR