WELD -001408 Неудовлетворенные зависимости при внедрении EntityManager

У меня есть bean-компонент @Stateless, который реализует два интерфейса (удаленный и локальный ). Я также добавил аннотацию @LocalBeanдля доступа к компоненту без представления интерфейса -.

@Stateless
@LocalBean
public class WeatherDataBean implements WeatherDataBeanRemote, WeatherDataBeanLocal {
    @Inject
    private EntityManager entityManager;

    public WeatherDataBean () {

    }
    //....attributes, getter & setter methods....
}

По этой причине я использую @Inject, взятый из этого примера быстрого запуска JBoss AS7 :

We use the "resource producer" pattern, from CDI, to "alias" the old fashioned @PersistenceContext injection of the entity manager to a CDI style injection. This allows us to use a consistent injection style (@Inject) throughout the application.

. Раньше я использовал:

@PersistenceContext(unitName="WeatherStationJPA")
private EntityManager entityManager;

В EJB все работает без проблем. Но с аннотацией @Injectя получаю эту ошибку:

WELD-001408 Unsatisfied dependencies for type [EntityManager] with qualifiers [@Default] at injection point [[field] @Inject private ejb.WeatherDataBean.entityManager]

Вот как у меня определены ресурсы класса:

public class Resources {
     @SuppressWarnings("unused")
     @PersistenceContext(unitName="WeatherStationJPA")
     @Produces
     private EntityManager entityManager;

     @Produces
     FacesContext getFacesContext() {
         return FacesContext.getCurrentInstance();
     }
}

Почему я получаю эту ошибку, если пытаюсь внедрить диспетчер сущностей?

РЕДАКТИРОВАТЬ: По запросу от @LightGuard я добавляю пакеты, которые я использую для ссылок на аннотации:

  1. WeatherDataBean имеет:

    import javax.ejb.LocalBean;
    import javax.ejb.Stateless;
    import javax.inject.Inject;
    
  2. Ресурсы имеют:

    import javax.enterprise.inject.Produces;
    import javax.faces.context.FacesContext;
    import javax.inject.Singleton;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
    

7
задан Jernej Jerin 1 August 2012 в 18:05
поделиться