Jakarta ee CDI bean不是';虽然不起作用,但托管bean是有效的

Jakarta ee CDI bean不是';虽然不起作用,但托管bean是有效的,jakarta-ee,primefaces,cdi,managed-bean,Jakarta Ee,Primefaces,Cdi,Managed Bean,我正在尝试填充PrimeFaces数据表: <p:dataTable var = "milestoneIndentifier" id="milestoneTable" value = "#{milestoneIdentifierManager.milestoneIdentifiers}" paginator="true" > <p:column sortBy="name" headerText = "Milestone"> <h:output

我正在尝试填充PrimeFaces数据表:

<p:dataTable var = "milestoneIndentifier" id="milestoneTable" value = "#{milestoneIdentifierManager.milestoneIdentifiers}" paginator="true" >
    <p:column sortBy="name" headerText = "Milestone">
        <h:outputText value ="#{milestoneIndentifier.name}" /> 
    </p:column>

    <p:column sortBy="acroynm" headerText = "Acroynm">
        <h:outputText value ="#{milestoneIndentifier.acronym}" />
    </p:column>

    <p:column sortBy="phaseName" headerText = "Phase Name">
        <h:outputText value ="#{milestoneIndentifier.phaseName}" />
    </p:column>

    <p:column headerText = "Action">
    </p:column>
</p:dataTable>
和取消注释:

@ManagedBean
@ViewScoped
然后,该表将显示我在
init
方法中创建的里程碑

编辑:我在WEB-INF文件夹中有一个
beans.xml
文件

以下是代码导入:

import java.util.ArrayList;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.enterprise.context.SessionScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.inject.Inject;
import javax.inject.Named;

import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ViewAccessScoped;

其中一些没有使用,我还没有清理代码。

您能显示您的导入语句吗?显然不需要任何内部代码导入。已将它们添加到问题中。
@ManagedBean
@ViewScoped
import java.util.ArrayList;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.enterprise.context.SessionScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.inject.Inject;
import javax.inject.Named;

import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ViewAccessScoped;