【发布时间】:2012-02-07 16:57:53
【问题描述】:
我有一个远程SLSB,部署在OC4J。
此会话 Bean 使用 TopLink,在某些情况下会引发 oracle.toplink.essentials.exceptions.QueryException 异常。
我是这样处理这个异常的:
public void slsbMethod()
{
try
{
// oracle.toplink.essentials.exceptions.QueryException throws here
}catch(Exception ex)
{
// do nothing
}
}
我是这样从客户那里调用这个 SLSB 的:
try
{
fooBarService.slsbMethod()
}catch(Exception ex)
{
System.out.println("Exception calling the EJB server");
}
但是我在 EJB 上处理这个异常,我仍然收到消息 Exception calling the EJB server 打印!
这是怎么回事??
【问题讨论】:
-
错误的异常堆栈跟踪是什么?您确定异常是从您的方法中引发的,而不是从 EJB 容器中容器管理的事务代码中引发的吗?
-
是的,你是对的,它可能是从 EJB 容器中的容器管理事务代码中抛出的,那么如何解决这个问题?