public BeanMetaData createBeanMetaData(BeanInitData bid, EJBModuleMetaDataImpl mmd) // d640935
                    throws EJBConfigurationException, ContainerException {
        final boolean isTraceOn = TraceComponent.isAnyTracingEnabled();
        if (isTraceOn && tc.isEntryEnabled())
            Tr.entry(tc, "createBeanMetaData: " + bid.ivJ2EEName);

        BeanMetaData bmd = ivEJBMDOrchestrator.createBeanMetaData(bid, mmd,
                                                                  ivContainer,
                                                                  ivInitAtStartup, ivInitAtStartupSet);

        // At this point we have constructed BeanMetaData from the merged WCCM and
        // Annotations metadata.  This seems like a fine spot to validate the merged
        // metadata before we go on to start binding artifacts related to the beans into
        // the name space.  For <= EJB2.1 beans we will put error messages into the
        // log if the metadata is bad.   For >= EJB 3.0 beans we will put out the same
        // error messages, but throw an exception in order to cause application start
        // to fail.  This strategy was chosen to not break existing apps that might be
        // slightly less than perfect, but still working ok as far as the customer was
        // concerned.
        ivEJBMDOrchestrator.validateMergedMetaData(bmd);

        // stopModule assumes homeRecord is set before BMD is inserted into
        // EJBModuleMetaDataImpl.ivBeanMetaDatas.                        RTC100347
        bmd.homeRecord = createHomeRecord(bmd, ivContainer.getHomeOfHomes()); // F91481

        // Add the BeanMetaData to the module.  This is needed to avoid creating
        // duplicate BMDs during startModule for EJB-in-WAR.
        mmd.ivBeanMetaDatas.put(bmd.enterpriseBeanName, bmd);

        if (isTraceOn && tc.isEntryEnabled())
            Tr.exit(tc, "createBeanMetaData");

        return bmd;
    }
public BeanMetaData createBeanMetaData ( BeanInitData bid , EJBModuleMetaDataImpl mmd ) throws EJBConfigurationException , ContainerException { final boolean isTraceOn = TraceComponent . isAnyTracingEnabled ( ) ; if ( isTraceOn && tc . isEntryEnabled ( ) ) Tr . entry ( tc , "createBeanMetaData: " + bid . ivJ2EEName ) ; BeanMetaData bmd = ivEJBMDOrchestrator . createBeanMetaData ( bid , mmd , ivContainer , ivInitAtStartup , ivInitAtStartupSet ) ; ivEJBMDOrchestrator . validateMergedMetaData ( bmd ) ; bmd . homeRecord = createHomeRecord ( bmd , ivContainer . getHomeOfHomes ( ) ) ; mmd . ivBeanMetaDatas . put ( bmd . enterpriseBeanName , bmd ) ; if ( isTraceOn && tc . isEntryEnabled ( ) ) Tr . exit ( tc , "createBeanMetaData" ) ; return bmd ; }
Create bean metadata with the specified module and component data. The
resulting BeanMetaData object is partially initialized; sufficiently that
remote homes can be bound lazily into the namespace. Before the metadata
is usable, {@link #finishBMDInit} must be called.