Я просто поигрался с вашей конструкцией, прочитал немного сварного шва document и обнаружил следующее.
Вы используете EJB, которые реализуют интерфейс, поэтому представление без интерфейса больше невозможно (очевидно), но вы пытаетесь получить прямой доступ к реализации.Как только вы объявляете его как EJB, вы должны помнить об условностях.Итак, если вы определяете интерфейс, вы должны использовать его, чтобы получить доступ к EJB.Изменение на следующее должно сработать:
@Inject
private ChildOne firstBean;
Доступ к реализации, даже если интерфейс определен, возможен только для простых управляемых компонентов CDI (классов без аннотаций @ Stateless / @ Stateful).Так что избавьтесь от вашей аннотации, и она сработает.
Только для вашей информации, если вы используете Glassfish.Если вы придерживаетесь своих EJB и пытаетесь получить доступ к методу родительских интерфейсов, вы столкнетесь с этой ошибкой / исключением.