HibernateJpaDialect and HibernateExceptionTranslator have a code path where a custom SQLExceptionTranslator can be configured. However, any DataAccessException provided by such a custom translator is immediately thrown instead of returned.