code: private void _createEagerBeans(FacesContext facesContext)
      {
          ExternalContext externalContext = facesContext.getExternalContext();
          RuntimeConfig runtimeConfig = RuntimeConfig.getCurrentInstance(externalContext);
          List<ManagedBean> eagerBeans = new ArrayList<ManagedBean>();
          
          // check all registered managed-beans
          for (ManagedBean bean : runtimeConfig.getManagedBeans().values())
          {
              String eager = bean.getEager();
              if (eager != null && "true".equals(eager))
              {
                  // eager beans are only allowed for application scope
                  if (ManagedBeanBuilder.APPLICATION.equals(bean.getManagedBeanScope()))
                  {
                      // add to eager beans
                      eagerBeans.add(bean);
                  }
                  else
                  {
                      // log warning and continue (the bean will be lazy loaded)
                      log.log(Level.WARNING, "The managed-bean with name "
                              + bean.getManagedBeanName()
                              + " must be application scoped to support eager=true.");
                  }
              }
          }
          
          // check if there are any eager beans
          if (!eagerBeans.isEmpty())
          {
              ManagedBeanBuilder managedBeanBuilder = new ManagedBeanBuilder();
              Map<String, Object> applicationMap = externalContext.getApplicationMap();
              
              for (ManagedBean bean : eagerBeans)
              {
                  // check application scope for bean instance
                  if (applicationMap.containsKey(bean.getManagedBeanName()))
                  {
                      // do not build bean, because it already exists
                      // (e.g. @ManagedProperty from previous managed bean already created it)
                      continue;
                  }
  
                  // create instance
                  Object beanInstance = managedBeanBuilder.buildManagedBean(facesContext, bean);
                  
                  // put in application scope
                  applicationMap.put(bean.getManagedBeanName(), beanInstance);
              }
          }
      }
docs: Checks for application scoped managed-beans with eager=true,
  creates them and stores them in the application map.
  @param facesContext