0

我试图从 Sybase 中的存储过程中捕获我的 Java 代码中的错误消息RAISERROR,但没有捕获任何内容,即使当我直接调用 proc 时,我可以看到错误被抛出。

我理解Mybatis-Spring

将 MyBatis 异常转换为 Spring DataAccessException

因此,我对我的 Mapper 类进行了编码:

void insertData(Data toInsert) throws Exception, DataAccessException;

我试图捕捉这两个异常,但没有捕捉到任何东西。

有没有人有任何想法?

谢谢,斯蒂芬

4

1 回答 1

0

我发现了如何做到这一点:

try {
    myMapper.insertData(data);
}
catch (org.springframework.jdbc.UncategorizedSQLException e) {
    Throwable ee = use.getCause();
    // getMessage on chained exception gets message from RAISERROR
    log.error(ee.getMessage(), e);
}

干杯,斯蒂芬

于 2012-07-28T12:59:59.287 回答