[英]Inject session bean into Entity
我正在使用EJB3.1,CDI和持久域对象模式编写JEE6应用程序。 在某些情况下,我需要在实体(jpa2.0)中有一个会话bean的实例。 使用@Inject或@EJB注入它不起作用。 它始终是空引用。
唯一可能的解决方案是通过InitialContext查找。 但这真的很糟糕。 有谁知道一种解决方案,如何从实体访问会话bean?
我已经阅读了有关无状态会话bean工厂的信息,但是找不到任何示例。
实体是由您创建的,如果您想将bean注入其中,则应由容器创建它们。
从技术上讲,您可以让您的实体由CDI容器管理,而不是使new YourEntity
使用@Inject @New YourEntity entity
。 但这有点违反直觉。 我还没试过
这是关于贫血数据模型与领域驱动设计的更大讨论的一部分。 也就是说,您的实体应该是没有任何行为的数据持有者,还是应该具有逻辑(并隐藏其状态)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.