JSR-300 @Inject для свойства дочернего класса дает множественную квалификацию

Я использую наследование и реферат для некоторых bean-компонентов и получаю NotUnique Exception. Пожалуйста, помогите выяснить решение (с помощью JSR-300):

public interface Service1Interface extends ServiceGeneralInterface {

}

@Named
public class Service1 extends ServiceGeneral implements Service1Interface{

}

@Named
public class MyWorkflow extends Workflowgeneral{
    @Inject
    private Service1Interface serv;

    public Service1Interface getService() {
        return serv;
    }
}


public abstract class Workflowgeneral{
    @Inject
    private ServiceGeneralInterface serv;

    public ServiceGeneralInterface getService(){
        return serv;
    }

    public void abc(){
        ...
        getService()
        ...
    }
}

При запуске веб-сервиса getService() получает не единственное исключение, которое может получить 2 значения: Service1Interface,ServiceGeneralInterface. Как этого избежать и вернуть Service1Interface (а не тот, что из абстрактного класса). На самом деле я хочу переопределить метод getService() из абстрактного класса.

Благодарю.

0 ответов

Другие вопросы по тегам