是的,可以,但是当EJB注入业务视图时,您要公开的唯一业务视图是该
@Local视图,该视图是实现接口(
IBean在您的情况下是本地业务接口)时的默认视图。因此,如果要注入bean本身,则需要告诉容器您正在使用无接口视图。
在您的示例中,如果仍然要实现接口并进行注入
Bean,则应使用
@LocalBean注释,这意味着Bean公开了无接口视图:
@Stateless@LocalBean // <-- no-interface viewclass Bean implements IBean {...}interface IBean {....}@SessionScopedclass Scoped { @Inject Bean bean; //Should be OK}或者,如果您不想实现任何接口,那么Bean在默认情况下会定义一个无接口视图:
@Statelessclass Bean {...}@SessionScopedclass Scoped { @Inject Bean bean; //OK}


