Class LocalePickerControl

  • All Implemented Interfaces:
    java.util.Observer, javax.servlet.jsp.el.VariableResolver, IControl, IDataBoundControl, IDataControl, IRenderer

    public class LocalePickerControl
    extends DataBoundControl<TabularSource<?>>
    Allows the current user to change his locale. Renders a list of locales available and the url to switch to each locale.

    The locales available are read from the source associated with this control. Each row of the source's tabulardata, must contain the information of a locale using the following fields:

    • locale: the locale code.
    • name: the display string for the locale.

    This control generates a XML code like the following example:

     <control>
             <data>
                    <locales>
                            <locale id="pt_BR"/>
                                    <name>Português</name>
                                    <url>[a url]</url>
                            </locale>
                            <locale id="en_US"/>
                                    <name>English</name>
                                    <url>[a url]</url>
                            </locale>
                    </locales>
             <data>
     <control>
     

    The locale id is the locale code, and the name is the locale display name, as provided by the source. The url is generated to call a process action with id setLocaleProcessAction sending the locale code specified in the locale request parameter. That process action is responsible for implementing the locale change. There is such implementation at LocaleProcessActionHandler.

    Example use:

    <control:lum_localePicker/> xml data available for xsl rendering: <control id="8A488A031150E33501115120657503CE" type="lum_localePicker"> <data> <locales> <locale id="en_US"> <name>English</name> <url>main.jsp?lumPageId=8A488A031136BFB7011138086E4A17ED&lumA=1&lumII=8A488A03114CA81B01114D4AEB660451&locale=en_US&doui_processActionId=setLocaleProcessAction</url> </locale> <locale id="pt_BR"> <name>Português</name> <url>main.jsp?lumPageId=8A488A031136BFB7011138086E4A17ED&lumA=1&lumII=8A488A03114CA81B01114D4AEB660451&locale=pt_BR&doui_processActionId=setLocaleProcessAction</url> </locale> </locales> </data> </control>
    Since:
    4.0.10
    Version:
    $Revision$ $Date$