Jsf 类型的不明确依赖项

Jsf 类型的不明确依赖项,jsf,jakarta-ee,dependency-injection,cdi,managed-bean,Jsf,Jakarta Ee,Dependency Injection,Cdi,Managed Bean,当我尝试将我的应用程序部署到Glassfish服务器时,我遇到此异常: org.jboss.weld.exceptions.DeploymentException:weld-001409不明确 具有限定符[@Default]的[FileReferenceDao]类型的依赖项位于 注入点[[BackedAnnotatedField]@Inject com.tugay.fup.web.MyUploadedFilesBean.fileReferenceDao]。可能的 依赖项[[sessionbean

当我尝试将我的应用程序部署到Glassfish服务器时,我遇到此异常:

org.jboss.weld.exceptions.DeploymentException:weld-001409不明确 具有限定符[@Default]的[FileReferenceDao]类型的依赖项位于 注入点[[BackedAnnotatedField]@Inject com.tugay.fup.web.MyUploadedFilesBean.fileReferenceDao]。可能的 依赖项[[sessionbean]类 com.tugay.fup.core.dao.FileReferenceDao和限定符[@Any] @默认];本地接口为[FileReferenceDao],会话bean [class com.tugay.fup.core.dao.FileReferenceDao和限定符[@Any] @默认];本地接口为[FileReferenceDao]]

有趣的是

可能的依赖项[[sessionbean]类 com.tugay.fup.core.dao.FileReferenceDao和限定符[@Any] @默认];本地接口为[FileReferenceDao],会话bean [class com.tugay.fup.core.dao.FileReferenceDao和限定符[@Any] @默认];本地接口为[FileReferenceDao]]

这是怎么回事

我只有一个FileReferenceDao,它没有接口或其他任何东西。它不扩展任何其他类。我就是这样使用它的:

import javax.enterprise.context.RequestScoped;
import javax.inject.Inject;
import javax.inject.Named;

@Named
@RequestScoped
public class MyUploadedFilesBean {

    @Inject
    FileReferenceDao fileReferenceDao;
直到15分钟前,一切都很顺利

我尝试将JSF托管bean与CDIBeans混合,但没有成功,我回滚了。现在我遇到了这个异常

@Stateless public class FileReferenceDao {

    @PersistenceContext(unitName = "Persistence")
    EntityManager em;

你使用的是什么版本的glassfish?你能试着将EJB注释为
@LocalBean
?@JohnAment有趣的是我不能总是复制它。glassfish-4.我仍在调查它的原因。您好。用LocalBean注释FileReferenceDao没有帮助。有时会发生这种情况。有时部署很好。我不知道我不明白这是怎么可能的。从注入到EJB解决了这个问题。我不知道这里发生了什么。谢谢你确认GF4。我实际上会把它作为一个针对GF4的错误提出。这应该很好。