从 ejb 生命周期来看,我认为当 ejb 超时时,调用 ejbRemove 方法。 如果我错了,请纠正我。
无论如何,如果不是这样,如何知道 ejb 已超时。
我正在使用 JBOSS 5.1 GA。
但实际上 ejb 超时时不会调用 ejbMove,所以我无法捕获 ejb 超时事件,请帮助我以某种方式捕获此事件。
顺便说一下,EJB 超时是否与事务超时有关,我认为不是,但不确定。
注意:我可以从 jboss 服务器文件夹内的 conf 文件夹中的 standardjboss.xml 从
根据 EJB 规范,调用方可以通过调用对象上的方法,然后捕获生成的异常来确定对象已超时:
- java.rmi.NoSuchObjectException - EJBObject/EJBHome,或
@Remote
接口扩展java.rmi.Remote - javax.ejb.NoSuchLocalObjectException - EJBLocalObject/EJBLocalHome
- javax.ejb.NoSuchEJBException -
@Local
,或者@Remote
业务接口不扩展 java.rmi.Remote