Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
超类中的javaee注入_Java_Dependency Injection - Fatal编程技术网

超类中的javaee注入

超类中的javaee注入,java,dependency-injection,Java,Dependency Injection,我试图在一个超类中注入一个bean,如下所示: public class DsmCrudDaoProcuder { @Produces public static DsmCrudDao produceDao(InjectionPoint injectionPoint) { return ((CRUDSessionBase)injectionPoint.getBean()).createCrudDao(); } } public abstract c

我试图在一个超类中注入一个bean,如下所示:

public class DsmCrudDaoProcuder 
{

    @Produces
    public static DsmCrudDao produceDao(InjectionPoint injectionPoint) {
        return ((CRUDSessionBase)injectionPoint.getBean()).createCrudDao();
    }
}


public abstract class CRUDSessionBase{

    @Resource public SessionContext context;

    protected static Log log = LogFactory.getLog(CRUDSessionBase.class.getName());
    protected static Log logger = LogFactory.getLog(CRUDSessionBase.class.getName());


    @Inject @New
    DsmCrudDao dao;

    /**
     * Get the concrete DAO
     * 
     * @return
     */
    protected abstract DsmCrudDao createCrudDao();



....
}
此操作在部署时失败:

WELD-001409类型[DsmCrudDao]的不明确依赖项,带有 注入点[[field]@Inject处的限定符[@Default] com.windriver.dsm.ejb.CRUDSessionBase.dao]。可能的依赖关系 [[managedbean]类 com.windriver.dsm.labmanagement.dao.TECodeCoverageDao]和限定符 [@Any@Default],托管Bean[类 com.windriver.dsm.enterprise.dao.BinaryGroupDao]和限定符[@Any] @默认],托管Bean[类 com.windriver.dsm.labmanagement.dao.TeBlockCoverageDao] 限定符[@Any@Default],托管Bean[class] com.windriver.dsm.enterprise.dao.DeviceSupportedServiceDao]带有 限定符[@Any@Default]

错误列表中的所有bean都是
DsmCrudDao
的派生类

有没有办法让这一切顺利进行