Использование Hibernate JPA для выполнения собственных запросов в БД Oracle из-за их сложности,
Я хочу поймать исключение, например " ORA-01722: Nombre non valide "
, выброшенное из SqlExceptionHelper
класса, но то, что ловило, это:
класс javax.persistence.PersistenceException: не удалось извлечь
ResultSet
Ошибка логгера, проследи меня, но не перехватил:
jdbc.spi.SqlExceptionHelper : ORA-01722: Nombre non valide
BigDecimal customerId = null;
try {
Query q = entityManager.createNativeQuery(
"select acc.account_id as customerId from Account ...");
customerId = (BigDecimal) q.getSingleResult();
} catch (Exception e) {
logger.info("CLASS : " + e.getClass());
if (e instanceof PersistenceException) { // should display ORA-01722: Nombre non valide ?
logger.info("ERRROR : " + e.getMessage());
throw new SQLException(e.getMessage());
}else
if (e instanceof SQLException) {
logger.info("ERRROR : " + e.getMessage());
throw new SQLException(e.getMessage());
}
logger.info("NOOOOOOOOOOOOO : " + e.getMessage());
throw new Exception(e.getMessage());
}