org.springframework.beans.factory

## Interface BeanClassLoaderAware

- All Superinterfaces:
    Aware
  All Known Implementing Classes:
    AbstractAdvisingBeanPostProcessor, AbstractAdvisorAutoProxyCreator, AbstractAutoProxyCreator, AbstractEntityManagerFactoryBean, AbstractFactoryBean, AbstractHttpInvokerRequestExecutor, AbstractServiceLoaderBasedFactoryBean, AbstractSingletonProxyFactoryBean, AnnotationAwareAspectJAutoProxyCreator, AnnotationMBeanExporter, AnnotationSessionFactoryBean, AspectJAwareAdvisorAutoProxyCreator, AspectJWeavingEnabler, AsyncAnnotationBeanPostProcessor, BeanNameAutoProxyCreator, BshScriptFactory, BurlapClientInterceptor, BurlapExporter, BurlapProxyFactoryBean, BurlapServiceExporter, CacheProxyFactoryBean, CastorMarshaller, CommonsHttpInvokerRequestExecutor, ConfigurationClassPostProcessor, CustomAutowireConfigurer, CustomEditorConfigurer, CustomScopeConfigurer, DefaultAdvisorAutoProxyCreator, DefaultContextLoadTimeWeaver, FieldRetrievingFactoryBean, GroovyScriptFactory, HessianClientInterceptor, HessianExporter, HessianProxyFactoryBean, HessianServiceExporter, HttpComponentsHttpInvokerRequestExecutor, HttpInvokerClientInterceptor, HttpInvokerProxyFactoryBean, HttpInvokerServiceExporter, InfrastructureAdvisorAutoProxyCreator, InterfaceBasedMBeanInfoAssembler, Jaxb2Marshaller, JaxRpcPortProxyFactoryBean, JaxWsPortClientInterceptor, JaxWsPortProxyFactoryBean, JCacheManagerFactoryBean, JmsInvokerProxyFactoryBean, JmsInvokerServiceExporter, JndiObjectFactoryBean, JndiRmiProxyFactoryBean, JndiRmiServiceExporter, JRubyScriptFactory, ListFactoryBean, LoadTimeWeavingConfiguration, LocalContainerEntityManagerFactoryBean, LocalEntityManagerFactoryBean, LocalPersistenceManagerFactoryBean, LocalSessionFactoryBean, LocalStatelessSessionProxyFactoryBean, MapFactoryBean, MappingJackson2MessageConverter, MappingJacksonMessageConverter, MBeanClientInterceptor, MBeanExporter, MBeanProxyFactoryBean, MBeanServerConnectionFactoryBean, MethodInvokingFactoryBean, MethodInvokingJobDetailFactoryBean, MethodInvokingRunnable, MethodInvokingTimerTaskFactoryBean, MethodMapTransactionAttributeSource, MethodValidationPostProcessor, ObjectFactoryCreatingFactoryBean, PersistenceExceptionTranslationPostProcessor, ProviderCreatingFactoryBean, ProxyFactoryBean, RemoteAccessor, RemoteExporter, RemoteInvocationBasedAccessor, RemoteInvocationBasedExporter, RemoteInvocationSerializingExporter, RemotingSupport, ResourceBundleMessageSource, RmiBasedExporter, RmiClientInterceptor, RmiProxyFactoryBean, RmiServiceExporter, ScriptFactoryPostProcessor, ServiceFactoryBean, ServiceListFactoryBean, ServiceLoaderFactoryBean, SetFactoryBean, SimpleBurlapServiceExporter, SimpleHessianServiceExporter, SimpleHttpInvokerRequestExecutor, SimpleHttpInvokerServiceExporter, SimpleRemoteStatelessSessionProxyFactoryBean, SortedResourcesFactoryBean, TransactionProxyFactoryBean, UrlBasedRemoteAccessor, XStreamMarshaller

      public interface BeanClassLoaderAware
      extends Aware

  Callback that allows a bean to be aware of the bean `class loader`; that is, the class loader used by the present bean factory to load bean classes.

  This is mainly intended to be implemented by framework classes which have to pick up application classes by name despite themselves potentially being loaded from a shared class loader.

  For a list of all bean lifecycle methods, see the `BeanFactory javadocs`.

  Since:
    2.0
  Author:
    Juergen Hoeller, Chris Beams
  See Also:
    `BeanNameAware`, `BeanFactoryAware`, `InitializingBean`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `setBeanClassLoader(ClassLoader classLoader)` Callback that supplies the bean `class loader` to a bean instance.

- - ### Method Detail

    - #### setBeanClassLoader

          void setBeanClassLoader(ClassLoader classLoader)

      Callback that supplies the bean `class loader` to a bean instance.

      Invoked after the population of normal bean properties but before an initialization callback such as `InitializingBean's` `InitializingBean.afterPropertiesSet()` method or a custom init-method.

      Parameters:
        `classLoader` - the owning class loader; may be `null` in which case a default `ClassLoader` must be used, for example the `ClassLoader` obtained via `ClassUtils.getDefaultClassLoader()`