gpt4 book ai didi

java - EJB 2.x "reentrant method call detected"异常的原因是什么?如何解决?

转载 作者:行者123 更新时间:2023-11-30 09:58:39 25 4
gpt4 key购买 nike

我正在维护一个在 JBoss 4.0.4 GA 应用程序服务器上运行的 EJB 2 CMP 遗留应用程序,其中部署了实体/无状态 session bean。所有 EJB 样板代码都是通过 XDoclet 从 EntityEJB/EntityEJBManager 注释生成的。

我注意到,当我的 GUI 客户端调用 facade create 方法时,我的服务器日志中有很多 EJBException 情况,并显示“检测到重入方法调用”消息,这会回滚事务.

这个异常是什么意思?我怎样才能避免出现这样的错误(不幸的是,我还不能重现)


更新:Found this link that explains what is meant by reentrancy ,但是,在我看来,它说我的应用程序无法同时访问?

最佳答案

我以前见过 EJB1 调用 EJB2,EJB2 作为同一事务的一部分在容器内回调 EJB1。

您可以通过将 EJB1 标记为可重入告诉容器允许这样做,这将允许在同一事务中多次访问它。

这是在带有以下标记的部署描述符中完成的:

<reentrant>True</reentrant>

XDoclet 可以使用相应的 EntityEJB 注释为您生成它。

关于java - EJB 2.x "reentrant method call detected"异常的原因是什么?如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/666995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com