【发布时间】:2017-08-04 08:23:56
【问题描述】:
下面的MyService 是一个无状态的EJB。如果我使用 CDI 查找它,而不是例如交易,它的行为会有所不同吗?
InitialContext initialContext = new InitialContext();
MyService myService1 = (MyService) initialContext.lookup("...MyService...");
VS
BeanManager beanManager = CDI.current().getBeanManager();
Bean<?> bean = beanManager.getBeans(MyService.class).iterator().next();
CreationalContext<?> ctx = beanManager.createCreationalContext(bean);
MyService myService2 = (MyService) beanManager.getReference(bean, MyService.class, ctx);
【问题讨论】:
-
有什么理由不使用@Inject?
-
我通常会这样做,但在我的情况下不能这样做。
标签: jakarta-ee dependency-injection transactions ejb cdi