org.springframework.ui.context |
Contains classes defining the application context subinterface
for UI applications. The theme feature is added here.
- If no
UiApplicationContextUtils.THEME_SOURCE_BEAN_NAME
bean is available in the context or parent context, a default ResourceBundleThemeSource
will be created for requested themes. In this case, the base name of the property file will match
with the theme name.
- If the bean is available in the context or parent context, a
basenamePrefix can be
set before the theme name for locating the property files like this:
<bean id="themeSource" class="org.springframework.ui.context.support.ResourceBundleThemeSource">
<property name="basenamePrefix"><value>theme.</value></property>
</bean>
in this case, the themes resource bundles will be named theme.<theme_name>XXX.properties.
- This can be defined at application level and/or at servlet level for web applications.
- Normal i18n features of Resource Bundles are available. So a theme message can be dependant
of both theme and locale.
- If messages in the resource bundles are in fact paths to resources(css, images, ...), make sure these resources
are directly available for the user and not, for example, under the WEB-INF directory.
Web packages add the resolution and the setting of the user current theme.
|
Java Source File Name | Type | Comment |
HierarchicalThemeSource.java | Interface | Sub-interface of ThemeSource to be implemented by objects that
can resolve theme messages hierarchically. |
Theme.java | Interface | A Theme can resolve theme-specific messages, codes, file paths, etcetera (e.g. CSS and image files in a web environment). |
ThemeSource.java | Interface | Interface to be implemented by objects that can resolve Themes. |