在调用ejb3方法时获取远程异常

时间:2013-05-21 15:14:46

标签: ejb-3.0

method(){
try{
some code..
}
catch(Exception e)
{
throw new userDefineException();
}
}

//从java客户端调用上面的方法时我得到了remoteexception但是我希望得到User defineException。

1 个答案:

答案 0 :(得分:2)

EJB容器将在RemoteException(或本地视图的EJBException)中包含未声明的(系统)异常。为避免这种情况,您应该:

  1. 更改UserDefineException以扩展Exception而不是RuntimeException,并将UserDefineException添加到远程接口的throws子句中。

  2. 使用@ApplicationException注释UserDefineException,或在ejb-jar.xml中将其指定为<application-exception>com.example.UserDefineException</application-exception>