|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.core.SimpleAliasRegistry
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
org.springframework.beans.factory.support.FactoryBeanRegistrySupport
org.springframework.beans.factory.support.AbstractBeanFactory
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
org.springframework.beans.factory.support.DefaultListableBeanFactory
org.sakaiproject.util.NoisierDefaultListableBeanFactory
public class NoisierDefaultListableBeanFactory
In Spring 1.2.6 and 1.2.8, when there's a problem pre-instantiating any singleton bean, all existing singleton beans are immediately destroyed. Unfortunately for developers, this destruction occurs without any explanation: neither the problematic bean's name nor the error stack is logged. This subclasses the default bean factory to log the failing bean's name and a stack trace of the exception.
| Field Summary | |
|---|---|
static boolean |
noisyClose
|
| Fields inherited from class org.springframework.beans.factory.support.DefaultSingletonBeanRegistry |
|---|
logger, NULL_OBJECT |
| Fields inherited from interface org.springframework.beans.factory.config.AutowireCapableBeanFactory |
|---|
AUTOWIRE_AUTODETECT, AUTOWIRE_BY_NAME, AUTOWIRE_BY_TYPE, AUTOWIRE_CONSTRUCTOR, AUTOWIRE_NO |
| Fields inherited from interface org.springframework.beans.factory.config.ConfigurableBeanFactory |
|---|
SCOPE_PROTOTYPE, SCOPE_SINGLETON |
| Fields inherited from interface org.springframework.beans.factory.BeanFactory |
|---|
FACTORY_BEAN_PREFIX |
| Constructor Summary | |
|---|---|
NoisierDefaultListableBeanFactory()
|
|
| Method Summary | |
|---|---|
protected void |
afterSingletonCreation(String beanName)
|
void |
destroySingletons()
|
Object |
getBean(String name,
Class requiredType,
Object[] args)
|
void |
preInstantiateSingletons()
|
| Methods inherited from class org.springframework.beans.factory.support.DefaultListableBeanFactory |
|---|
allowAliasOverriding, containsBeanDefinition, copyConfigurationFrom, determinePrimaryCandidate, findAutowireCandidates, freezeConfiguration, getAutowireCandidateResolver, getBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, isAutowireCandidate, isAutowireCandidate, isBeanEligibleForMetadataCaching, isConfigurationFrozen, isPrimary, registerBeanDefinition, registerResolvableDependency, removeBeanDefinition, resetBeanDefinition, resolveDependency, setAllowBeanDefinitionOverriding, setAllowEagerClassLoading, setAutowireCandidateResolver, toString |
| Methods inherited from class org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory |
|---|
applyBeanPostProcessorsAfterInitialization, applyBeanPostProcessorsBeforeInitialization, applyBeanPostProcessorsBeforeInstantiation, applyBeanPropertyValues, applyMergedBeanDefinitionPostProcessors, applyPropertyValues, autowire, autowireBean, autowireBeanProperties, autowireByName, autowireByType, autowireConstructor, checkDependencies, configureBean, createBean, createBean, createBean, createBeanInstance, determineConstructorsFromBeanPostProcessors, doCreateBean, filterPropertyDescriptorsForDependencyCheck, getEarlyBeanReference, getInstantiationStrategy, getTypeForFactoryBean, getTypeForFactoryMethod, ignoreDependencyInterface, ignoreDependencyType, initializeBean, initializeBean, instantiateBean, instantiateUsingFactoryMethod, invokeCustomInitMethod, invokeInitMethods, isExcludedFromDependencyCheck, populateBean, postProcessObjectFromFactoryBean, predictBeanType, removeSingleton, resolveBeforeInstantiation, resolveDependency, setAllowCircularReferences, setAllowRawInjectionDespiteWrapping, setInstantiationStrategy, unsatisfiedNonSimpleProperties |
| Methods inherited from class org.springframework.beans.factory.support.AbstractBeanFactory |
|---|
addBeanPostProcessor, addPropertyEditorRegistrar, afterPrototypeCreation, beforePrototypeCreation, checkMergedBeanDefinition, clearMergedBeanDefinition, containsBean, containsLocalBean, copyRegisteredEditorsTo, destroyBean, destroyBean, destroyScopedBean, doGetBean, getAliases, getBean, getBean, getBean, getBeanClassLoader, getBeanPostProcessorCount, getBeanPostProcessors, getCustomEditors, getCustomTypeConverter, getMergedBeanDefinition, getMergedBeanDefinition, getMergedBeanDefinition, getMergedLocalBeanDefinition, getObjectForBeanInstance, getParentBeanFactory, getPropertyEditorRegistrars, getRegisteredScope, getRegisteredScopeNames, getTempClassLoader, getType, getTypeConverter, hasDestructionAwareBeanPostProcessors, hasInstantiationAwareBeanPostProcessors, initBeanWrapper, isBeanNameInUse, isCacheBeanMetadata, isCurrentlyInCreation, isFactoryBean, isFactoryBean, isPrototype, isPrototypeCurrentlyInCreation, isSingleton, isTypeMatch, markBeanAsCreated, originalBeanName, registerCustomEditor, registerCustomEditor, registerCustomEditors, registerDisposableBeanIfNecessary, registerScope, removeSingletonIfCreatedForTypeCheckOnly, requiresDestruction, resolveBeanClass, resolveBeanClass, setBeanClassLoader, setCacheBeanMetadata, setParentBeanFactory, setTempClassLoader, setTypeConverter, transformedBeanName |
| Methods inherited from class org.springframework.beans.factory.support.FactoryBeanRegistrySupport |
|---|
getCachedObjectForFactoryBean, getFactoryBean, getObjectFromFactoryBean, getTypeForFactoryBean |
| Methods inherited from class org.springframework.beans.factory.support.DefaultSingletonBeanRegistry |
|---|
addSingleton, addSingletonFactory, beforeSingletonCreation, containsSingleton, destroyBean, destroySingleton, getDependenciesForBean, getDependentBeans, getSingleton, getSingleton, getSingleton, getSingletonCount, getSingletonMutex, getSingletonNames, hasDependentBean, isSingletonCurrentlyInCreation, onSuppressedException, registerContainedBean, registerDependentBean, registerDisposableBean, registerSingleton |
| Methods inherited from class org.springframework.core.SimpleAliasRegistry |
|---|
canonicalName, isAlias, registerAlias, removeAlias, resolveAliases |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.beans.factory.config.ConfigurableListableBeanFactory |
|---|
ignoreDependencyInterface, ignoreDependencyType |
| Methods inherited from interface org.springframework.beans.factory.config.AutowireCapableBeanFactory |
|---|
applyBeanPostProcessorsAfterInitialization, applyBeanPostProcessorsBeforeInitialization, applyBeanPropertyValues, autowire, autowireBean, autowireBeanProperties, configureBean, createBean, createBean, initializeBean, resolveDependency |
| Methods inherited from interface org.springframework.beans.factory.config.ConfigurableBeanFactory |
|---|
addBeanPostProcessor, addPropertyEditorRegistrar, copyRegisteredEditorsTo, destroyBean, destroyScopedBean, getBeanClassLoader, getBeanPostProcessorCount, getDependenciesForBean, getDependentBeans, getMergedBeanDefinition, getRegisteredScope, getRegisteredScopeNames, getTempClassLoader, getTypeConverter, isCacheBeanMetadata, isCurrentlyInCreation, isFactoryBean, registerAlias, registerCustomEditor, registerCustomEditor, registerDependentBean, registerScope, resolveAliases, setBeanClassLoader, setCacheBeanMetadata, setParentBeanFactory, setTempClassLoader, setTypeConverter |
| Methods inherited from interface org.springframework.beans.factory.HierarchicalBeanFactory |
|---|
containsLocalBean, getParentBeanFactory |
| Methods inherited from interface org.springframework.beans.factory.BeanFactory |
|---|
containsBean, getAliases, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatch |
| Methods inherited from interface org.springframework.beans.factory.config.SingletonBeanRegistry |
|---|
containsSingleton, getSingleton, getSingletonCount, getSingletonNames, registerSingleton |
| Methods inherited from interface org.springframework.beans.factory.support.BeanDefinitionRegistry |
|---|
isBeanNameInUse |
| Methods inherited from interface org.springframework.core.AliasRegistry |
|---|
getAliases, isAlias, registerAlias, removeAlias |
| Field Detail |
|---|
public static boolean noisyClose
| Constructor Detail |
|---|
public NoisierDefaultListableBeanFactory()
| Method Detail |
|---|
public void preInstantiateSingletons()
throws org.springframework.beans.BeansException
preInstantiateSingletons in interface org.springframework.beans.factory.config.ConfigurableListableBeanFactorypreInstantiateSingletons in class org.springframework.beans.factory.support.DefaultListableBeanFactoryorg.springframework.beans.BeansExceptionpublic void destroySingletons()
destroySingletons in interface org.springframework.beans.factory.config.ConfigurableBeanFactorydestroySingletons in class org.springframework.beans.factory.support.DefaultSingletonBeanRegistryprotected void afterSingletonCreation(String beanName)
afterSingletonCreation in class org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
public Object getBean(String name,
Class requiredType,
Object[] args)
throws org.springframework.beans.BeansException
getBean in class org.springframework.beans.factory.support.AbstractBeanFactoryorg.springframework.beans.BeansException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||