Внедрение CDI универсальной реализации интерфейса - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь внедрить реализацию универсального интерфейса и получаю исключение:

org.jboss.weld.exceptions.DeploymentException: WELD-001408: неудовлетворенные зависимости для типа WeatherElementService с квалификаторами @По умолчанию в точке внедрения [BackedAnnotatedField] @Inject private ru.bellintegrator.db _service.service.DBServiceImpl.astronomyService

Вот мой интерфейс:

public interface WeatherElementService <W extends WeatherElement,B extends BaseEntity,B1 extends BaseEntity>

Вот его реализация:

@ApplicationScoped
public class AstronomyServiceImpl implements WeatherElementService<Astronomy, AstronomyEntity, CurrentObservationEntity>

Вот точка внедрения:

@ApplicationScoped 
public class DBServiceImpl implements DBService {
@Inject
private AstronomyServiceImpl astronomyService;

Я пробовал внедрение промежуточного интерфейса. AstronomyService реализует WeatherElementService - тот же результат, выдает исключение

my beans.xmlсодержит bean-discovery-mode="all"

Параметры типа BaseEntity и WeatherElement не являются компонентами, хотя я пытался аннотировать их исходные классы с помощью @ApplicationScoped, но это все равно не решило проблему.WeatherElement находится в другом модуле, который включен в зависимости для текущего модуля

В чем может быть проблема?

...