我有一个 java EE web 应用程序,其中特定的注入会导致以下错误:
WELD-001408:带有限定符 @Default 的 GenericDAO 类型的依赖关系不满足
豆豆
@Stateless
public class MyBean extends CustomBean<Entity> {
...
}
自定义Bean
public class CustomBean<T extends Serializable> implements Serializable {
@Inject
private GenericDAO<T> genericDAO;
}
通用DAO
public abstract class GenericDAO<T extends Serializable> implements Serializable {
...
}
只有在应用程序中定义了 beans.xml 时才会出现此问题。删除它,也解决了这个问题。在我的情况下,需要 beans.xml。此外,当GenericDAO<T> genericDAO;
从 CustomBean 中删除注入时,该错误不再出现。此外,我在其他课程中的其余注射似乎没有任何问题。
我试图通过创建 GenericDAO 的接口并注入接口来解决这个问题。还尝试使用 @Local , @Dependent 等几个注释,但我每次都会偶然发现不同的错误。