Class CustomEditorConfigurer
- All Implemented Interfaces:
- BeanFactoryPostProcessor,- Ordered
BeanFactoryPostProcessor implementation that allows for convenient
 registration of custom property editors.
 In case you want to register PropertyEditor instances,
 the recommended usage as of Spring 2.0 is to use custom
 PropertyEditorRegistrar implementations that in turn register any
 desired editor instances on a given
 registry. Each
 PropertyEditorRegistrar can register any number of custom editors.
 
 <bean id="customEditorConfigurer" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
   <property name="propertyEditorRegistrars">
     <list>
       <bean class="mypackage.MyCustomDateEditorRegistrar"/>
       <bean class="mypackage.MyObjectEditorRegistrar"/>
     </list>
   </property>
 </bean>
 
 
 It's perfectly fine to register PropertyEditor classes via
 the customEditors property. Spring will create fresh instances of
 them for each editing attempt then:
 
 <bean id="customEditorConfigurer" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
   <property name="customEditors">
     <map>
       <entry key="java.util.Date" value="mypackage.MyCustomDateEditor"/>
       <entry key="mypackage.MyObject" value="mypackage.MyObjectEditor"/>
     </map>
   </property>
 </bean>
 
 
 Note, that you shouldn't register PropertyEditor bean instances via
 the customEditors property as PropertyEditors are stateful
 and the instances will then have to be synchronized for every editing
 attempt. In case you need control over the instantiation process of
 PropertyEditors, use a PropertyEditorRegistrar to register
 them.
 
 Also supports "java.lang.String[]"-style array class names and primitive
 class names (for example, "boolean"). Delegates to ClassUtils for actual
 class name resolution.
 
NOTE: Custom property editors registered with this configurer do
 not apply to data binding. Custom editors for data binding need to
 be registered on the DataBinder:
 Use a common base class or delegate to common PropertyEditorRegistrar
 implementations to reuse editor registration there.
- Since:
- 27.02.2004
- Author:
- Juergen Hoeller
- See Also:
- 
- PropertyEditor
- PropertyEditorRegistrar
- ConfigurableBeanFactory.addPropertyEditorRegistrar(org.springframework.beans.PropertyEditorRegistrar)
- ConfigurableBeanFactory.registerCustomEditor(java.lang.Class<?>, java.lang.Class<? extends java.beans.PropertyEditor>)
- DataBinder.registerCustomEditor(java.lang.Class<?>, java.beans.PropertyEditor)
 
- 
Field SummaryFieldsFields inherited from interface org.springframework.core.OrderedHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionintgetOrder()Get the order value of this object.voidpostProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) Modify the application context's internal bean factory after its standard initialization.voidsetCustomEditors(Map<Class<?>, Class<? extends PropertyEditor>> customEditors) Specify the custom editors to register via aMap, using the class name of the required type as the key and the class name of the associatedPropertyEditoras value.voidsetOrder(int order) voidsetPropertyEditorRegistrars(PropertyEditorRegistrar[] propertyEditorRegistrars) Specify thePropertyEditorRegistrarsto apply to beans defined within the current application context.
- 
Field Details- 
loggerprotected final org.apache.commons.logging.Log logger
 
- 
- 
Constructor Details- 
CustomEditorConfigurerpublic CustomEditorConfigurer()
 
- 
- 
Method Details- 
setOrderpublic void setOrder(int order) 
- 
getOrderpublic int getOrder()Description copied from interface:OrderedGet the order value of this object.Higher values are interpreted as lower priority. As a consequence, the object with the lowest value has the highest priority (somewhat analogous to Servlet load-on-startupvalues).Same order values will result in arbitrary sort positions for the affected objects. 
- 
setPropertyEditorRegistrarsSpecify thePropertyEditorRegistrarsto apply to beans defined within the current application context.This allows for sharing PropertyEditorRegistrarswithDataBinders, etc. Furthermore, it avoids the need for synchronization on custom editors: APropertyEditorRegistrarwill always create fresh editor instances for each bean creation attempt.
- 
setCustomEditorsSpecify the custom editors to register via aMap, using the class name of the required type as the key and the class name of the associatedPropertyEditoras value.
- 
postProcessBeanFactorypublic void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException Description copied from interface:BeanFactoryPostProcessorModify the application context's internal bean factory after its standard initialization. All bean definitions will have been loaded, but no beans will have been instantiated yet. This allows for overriding or adding properties even to eager-initializing beans.- Specified by:
- postProcessBeanFactoryin interface- BeanFactoryPostProcessor
- Parameters:
- beanFactory- the bean factory used by the application context
- Throws:
- BeansException- in case of errors
 
 
-