Spring-Spring MVCNo Comments

In Spring MVC, ResourceBundleViewResolver is used to resolve “view named” based on view beans in “.properties” file.

By default, ResourceBundleViewResolver will loads the view beans from file views.properties, which located at the root of the project class path. However, this location can be overridden through the “basename” property, for example,

 

In above case, it loads the view beans from “spring-views.properties“, which located at the root of the project class path.

Note
The ResourceBundleViewResolver has the ability to load view beans from different resource bundles for different locales, but this use case is rarely required.

ResourceBundleViewResolver example to show you how it works :

  • Controller

A controller class, return a view, named “WelcomePage“.

  • ResourceBundleViewResolver

Register ResourceBundleViewResolver in the Spring’s bean configuration file, change the default view beans location to “spring-views.properties“.

  • View beans

Declare each view bean as a normal resource bundle style (key & message), where

  1. WelcomePage” is the view name to match.
  2. .(class)” is the type of view.
  3. .url” is the view’s URL location.

File : spring-views.properties

Note
Put this “spring-views.properties” file on your project class path.
How it works ?
When view name “WelcomPage” is returned by controller, the ResourceBundleViewResolver will find the key start with “WelcomPage” in “spring-views.properties” file, and return the corresponds view’s URL “/WEB-INF/pages/WelcomPage.jsp” back to the DispatcherServlet.
That’s all with ResourceBundleViewResolver, check my Spring MVC- View Resolver post to see another ways of view resolvers.

Be the first to post a comment.

Add a comment