GenericJDBCException getErrorCode() sempre = 0

0 respostas
F

Boa tarde pessoal,
Temos uma aplicação rodando com o FireBird e estamos migrando para o HSQLDB e estamos com um pequeno problema: Toda vez que o Hibernate lança uma GenericJDBCException a gente chama um método para verificar o código do erro utilizando o método getErrorCode() da Exception lançada para exibir uma mensagem apropriada ao usuário, por exemplo, quando o usuário viola uma chave única com um cadastro, nós interpretamos o código do erro de acordo com o SGBDR e informamos ao usuário de que ele está tentando cadastrar um registro já existente. O estranho é que com o HSQLDB toda vez que ocorre uma GenericJDBCException o método getErrorCode() retorna 0. Pra gente ter certeza, criamos uma aplicação separada bem simples com um único método que faz um INSERT violando uma chave única, e nessa aplicação separada, onde não utilizamos o Hibernate,a SQLException lançada retorna o código do erro corretamente.

Alguém tem idéia do que poderia estar ocorrendo?

Obs: Na aplicação real nós não criamos nenhum invólucro para as Exceptions lançadas, apenas analisamos elas.

Obrigado a todos pela atenção!

Criado 22 de março de 2009
Respostas 0
Participantes 1