2016-04-26 2 views
1

Я использую Spring JDBCTemplate, и я полагаю, чтобы поймать DataAccessException при возникновении проблем, но я на самом деле перед лицом org.postgresql.util.PSQLException, который я не могу поймать в блоке, компилятор говорит мне:Spring JdbcTemplate исключение

исключение PSQLException никогда не брошено в теле

@Transactional(propagation = Propagation.MANDATORY) 
public List<Exe_Resultat> getResultats(Long executionId) { 
    try { 
     String SQL = "SELECT * FROM " + pojoClasse.getSimpleName() + "WHERE execution_id = ?"; 

     return jdbcTemplate.query(SQL, new Object[]{executionId}, this.getRowMapper()); 
    } 
    //I actually get a PSQLException and not a DataAccesException 
    catch (DataAccessException e) { 
     //Do a thing 
    } 
} 

Но при исполнении моего кода я реально получить PSQLException. Как его поймать?

+0

Изменения '' DataAccessException' в PSQLException'. Это то, что вы имеете в виду? – bmarkham

+0

Как вы инициализировали 'JdbcTemplate'? По-видимому, перевод исключений отключен. –

+0

Какое исключение вы получаете ... Опубликуйте трассировку стека исключения. –

ответ

0

Spring переводит базы данных конкретных исключения его собственных исключения