EJB - 你可以在bean中使用bean吗?

时间:2011-08-30 19:39:57

标签: java-ee ejb javabeans

例如,我可以执行以下操作吗?

@Stateless
@LocalBean
public class MyBean extends AbstractFacade<MyBeanEntity>
{   @PersistenceContext(UnitName='myPU")
    private EntityManager em;

    @EJB
    private MyBean2 bean2;
    @EJB
    private MyBean3 bean3;

    ....

}

对于MyBean2和MyBean3,它们看起来像这样

public class MyBean2 extends AbstractFacade<MyBean2Entity>
{   @PersistenceContext(UnitName='myPU")
        private EntityManager em;

        ....

}

public class MyBean3 extends AbstractFacade<MyBean3Entity>
{   @PersistenceContext(UnitName='myPU")
    private EntityManager em;

        ....

}

我需要这样做,因为myBean需要调用myBean2和myBean3中实现的一些业务逻辑。但我不确定这是否有效,或者整个“@EJB bean注入”在这种情况下是如何工作的。有什么想法吗?非常感谢!

1 个答案:

答案 0 :(得分:0)

当然,在另一个EJB中使用@EJB应该没问题。确保在第二个bean类之上安装@Local。