有没有任何方法可以中断有状态会话bean



这个问题在某种程度上与在不使用线程的情况下处理EJB3中的超时有关。

背景:我有一个操作的例子,它可能会在运行时锁定,如果发生这种情况,我必须能够处理这种可能性并终止操作。该解决方案必须与应用程序服务器无关,因此不能选择具有timout值的容器管理事务。

实际问题:解决方案的一个想法是,我在有状态的会话bean中运行操作,并使用外部@Timeout方法对其进行监控,但为了实现这一点,我需要能够中断或取消该会话bean。有办法做到这一点吗?

规范规定(§4.3.14):

容器序列化对每个有状态和无状态会话bean例子大多数容器将支持会话bean的许多实例同时执行;然而,每个实例只看到序列化的方法调用的序列。因此有状态或无状态会话bean不必编码为可重入。

因此,当同一实例的另一个方法仍在运行时,无法调用会话bean实例的方法。

相关内容

  • 没有找到相关文章

最新更新