无法捕获EntityManager.persist抛出的运行时异常

时间:2015-03-08 18:02:03

标签: java-ee jpa exception-handling ejb

我有一个名为DatabaseService的无状态会话bean,这里是代码:

public void create(T entity) {
    try {
        getEntityManager().persist(entity);
    } catch (Exception e) {
        System.out.println("handle runtime exception here: " + e.getClass().getName());
    }
}

但是catch块中的代码永远不会被执行,为什么会这样?

如果我修改这样的代码,那么catch块将起作用:

public void create(T entity) {
    try {
        throw new RuntimeException();
    } catch (Exception e) {
        System.out.println("handle runtime exception here: " + e.getClass().getName());
    }
}

0 个答案:

没有答案