EJB 规范的引用:
如果 bean 方法遇到系统异常或错误,它应该简单地将错误从 bean 方法传播到容器(即 bean 方法不必捕获异常)。
但我不明白。这是否意味着我不应该捕获所有类型的异常(即尝试捕获Exception
类)并将其作为我的应用程序异常重新抛出?
一个更清晰的例子:
public void beanMethod throws MyApplicationException {
try {
// do something
} catch (Exception e) {
throw new MyApplicationException(e); // Should I do it like this?
}
}
或者这不是针对 EJB 开发人员,而仅针对 EJB 引用实现开发人员(容器开发人员):在后一种情况下,因此,容器不能将系统异常传播到我的业务方法,并且我的catch(Exception e)
块永远不会捕获任何系统异常?