我正在使用EJB3,JPA和JSF开发应用程序,我想使用CDI将DAO注入到EJB中:

这是我的DAO的代码:



    public class ZoneDao {

        @PersistenceContext(unitName = "wabApp3PU")
        private EntityManager em;

        /* Functions */

    }



这是我的EJB代码:



    @Stateless
    public class ZoneFacade{

        @Inject
        private ZoneDao zoneDao;

        /* Functions*/

    }



这是我得到的错误:

org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [ZoneDao] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject private fr.si.metier.ZoneFacade.zoneDao]


注意:我正在使用glassfish 4应用程序服务器

最佳答案

JAVA EE 6-CDI组件,给DAO @ApplicationScoped,然后它将允许注入持久性上下文

07-24 16:01