gpt4 book ai didi

java - 两个嵌套的 EJB Bean - 只有第一个被注入(inject)了 entitymanager

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:59:30 27 4
gpt4 key购买 nike

我有一个有状态的和一个单一的 EJB Bean。

有状态 bean 使用实体管理器(注入(inject))并调用 singelton bean。singelton bean 使用实体管理器(注入(inject))。

如果我尝试从有状态 bean 调用 singelton bean,则 singelton bean 不会注入(inject)实体管理器。

难道不能同时在两个 bean 中获取实体管理器吗?

EJB bean

@Singleton
@LocalBean
public class AllocationPlanController implements AllocationPlanControllerRemote {

@PersistenceContext
private EntityManager em;

EJB Bean二

@Stateful
@LocalBean
public class AllocationController implements AllocationControllerRemote {

@PersistenceContext
private EntityManager em;

private Allocation allocation;
private AllocationPlan allocationPlan;

AllocationPlanController allocationPlanController = new AllocationPlanController();

最佳答案

EntityManager 未注入(inject)到 AllocationPlanController 中,因为您是“手动”使用其构造函数创建 AllocationPlanController 实例。您应该将 AllocationPlanController 注入(inject)到 AllocationController bean 中,让容器管理它的生命周期。

关于java - 两个嵌套的 EJB Bean - 只有第一个被注入(inject)了 entitymanager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8850459/

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