Exposes JSTL-specific request attributes specifying locale and resource bundle for JSTL's formatting and message tags, using Spring's locale and {@link org.springframework.context.MessageSource}.
Typical usage with {@link InternalResourceViewResolver} would look as follows,from the perspective of the DispatcherServlet context definition:
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename" value="messages"/> </bean>Every view name returned from a handler will be translated to a JSP resource (for example: "myView" -> "/WEB-INF/jsp/myView.jsp"), using this view class to enable explicit JSTL support.
The specified MessageSource loads messages from "messages.properties" etc files in the class path. This will automatically be exposed to views as JSTL localization context, which the JSTL fmt tags (message etc) will use. Consider using Spring's ReloadableResourceBundleMessageSource instead of the standard ResourceBundleMessageSource for more sophistication. Of course, any other Spring components can share the same MessageSource.
This is a separate class mainly to avoid JSTL dependencies in {@link InternalResourceView} itself. JSTL has not been part of standardJ2EE up until J2EE 1.4, so we can't assume the JSTL API jar to be available on the class path.
Hint: Set the {@link #setExposeContextBeansAsAttributes} flag to "true"in order to make all Spring beans in the application context accessible within JSTL expressions (e.g. in a c:out
value expression). This will also make all such beans accessible in plain ${...}
expressions in a JSP 2.0 page.
@author Juergen Hoeller
@since 27.02.2003
@see org.springframework.web.servlet.support.JstlUtils#exposeLocalizationContext
@see InternalResourceViewResolver
@see org.springframework.context.support.ResourceBundleMessageSource
@see org.springframework.context.support.ReloadableResourceBundleMessageSource
|
|
|
|
|
|
|
|
|
|