这是一个奇怪的情况。让我尽可能地解释它。
我有一个接口Client
,其中包含引发自定义异常的方法。我的 EJB3 Remote 扩展了这个接口Client
并被注释了@Remote
。我的 EJB3 Bean 用于扩展 Remote 并被注释@Stateless
。
现在奇怪了。由于一个非常具体的问题,我无法在我的应用服务器上部署任何 EJB3 jar。(问题不是我如何解决这个部署问题。)
现在我必须将代码从 EJB3 降级到 EJB2。由于我的远程接口中的所有方法都必须抛出RemoteException
(EJB2 Spec) ,我不能再从我的Client
接口扩展。
我剩下的选项是创建一个 EJB2Wrapper,它可以从Client
接口和我调用到远程接口的每个方法中扩展。
这为每个方法创建了丑陋的 try catch 块,因为我必须捕获RemoteException
.
有一个更好的方法吗?