【问题标题】:Producer/consumer Pattern with dependency injection error具有依赖注入错误的生产者/消费者模式
【发布时间】:2018-08-31 14:04:37
【问题描述】:

Java EE 7 - Injection into Runnable/Callable object

继续这个问题,我有一种情况......我正在使用生产者/消费者模式来消费对象列表。 My Class Consumer 是 Runnable 的实现。

public class MYConsumer implements Runnable{

   @EJB
   private MYService myService;    

   private BlockingQueue<> queue;

   public MYConsumer (BlockingQueue<> q){
        this.queue=q;
   }
  @Override
    public void run() {
       /** Error is here**/    
       myService.insert(); 
    }
}

Pattern 的实现工作正常,但是当我尝试使用 myService 时,它​​是 Null。容器未注入服务。我知道这是因为 Container 只知道自己创建的实例。

但是如何才能克服这个问题呢? 谢谢

【问题讨论】:

    标签: java multithreading dependency-injection cdi producer-consumer


    【解决方案1】:

    您应该在会话 bean 中实例化您的可运行对象。此会话 bean 将实例化您想要的服务,然后将其传递给您的可运行对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-20
      • 2015-10-12
      • 1970-01-01
      • 1970-01-01
      • 2011-10-27
      • 1970-01-01
      相关资源
      最近更新 更多