The Spring Framework

## org.springframework.beans.propertyeditors
Class ResourceBundleEditor

    java.lang.Object
      java.beans.PropertyEditorSupport
          org.springframework.beans.propertyeditors.ResourceBundleEditor

All Implemented Interfaces:
  PropertyEditor

    public class ResourceBundleEditor

extends PropertyEditorSupport

`PropertyEditor` implementation for `ResourceBundles`.

Only supports conversion from a String, but not to a String. Find below some examples of using this class in a (properly configured) Spring container using XML-based metadata:

     <bean id="errorDialog" class="...">
        <!--
            the 'messages' property is of type java.util.ResourceBundle.
            the 'DialogMessages.properties' file exists at the root of the CLASSPATH
        -->
        <property name="messages" value="DialogMessages"/>
     </bean>

     <bean id="errorDialog" class="...">
        <!--
            the 'DialogMessages.properties' file exists in the 'com/messages' package
        -->
        <property name="messages" value="com/messages/DialogMessages"/>
     </bean>

A 'properly configured' Spring `container` might contain a `CustomEditorConfigurer` definition such that the conversion can be effected transparently:

     <bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
        <property name="customEditors">
            <map>
                <entry key="java.util.ResourceBundle">
                    <bean class="org.springframework.beans.propertyeditors.ResourceBundleEditor"/>
                </entry>
            </map>
        </property>
     </bean>

Please note that this `PropertyEditor` is not registered by default with any of the Spring infrastructure.

Thanks to David Leal Valmana for the suggestion and initial prototype.

Since:
  2.0
Author:
  Rick Evans

Field Summary
`static String` `BASE_NAME_SEPARATOR` The separator used to distinguish between the base name and the locale (if any) when `converting from a String`.

Constructor Summary
`ResourceBundleEditor()`

Method Summary
`void` `setAsText(String text)`

Methods inherited from class java.beans.PropertyEditorSupport
`addPropertyChangeListener, firePropertyChange, getAsText, getCustomEditor, getJavaInitializationString, getSource, getTags, getValue, isPaintable, paintValue, removePropertyChangeListener, setSource, setValue, supportsCustomEditor`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### BASE_NAME_SEPARATOR

    public static final String BASE_NAME_SEPARATOR

  The separator used to distinguish between the base name and the locale (if any) when `converting from a String`.

  See Also:
    Constant Field Values

Constructor Detail

### ResourceBundleEditor

    public ResourceBundleEditor()

Method Detail

### setAsText

    public void setAsText(String text)
                   throws IllegalArgumentException

  Specified by:
    `setAsText` in interface `PropertyEditor`
  Overrides:
    `setAsText` in class `PropertyEditorSupport`
  Throws:
    `IllegalArgumentException`

The Spring Framework

Copyright © 2002-2008 The Spring Framework.