org.springframework.web.servlet

## Interface ViewResolver

- All Known Implementing Classes:
    AbstractCachingViewResolver, AbstractTemplateViewResolver, BeanNameViewResolver, ContentNegotiatingViewResolver, FreeMarkerViewResolver, InternalResourceViewResolver, JasperReportsViewResolver, ResourceBundleViewResolver, TilesViewResolver, TilesViewResolver, UrlBasedViewResolver, VelocityLayoutViewResolver, VelocityViewResolver, XmlViewResolver, XsltViewResolver

      public interface ViewResolver

  Interface to be implemented by objects that can resolve views by name.

  View state doesn't change during the running of the application, so implementations are free to cache views.

  Implementations are encouraged to support internationalization, i.e. localized view resolution.

  Author:
    Rod Johnson, Juergen Hoeller
  See Also:
    `InternalResourceViewResolver`, `ResourceBundleViewResolver`, `XmlViewResolver`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `View` | `resolveViewName(String viewName, Locale locale)` Resolve the given view by name.

- - ### Method Detail

    - #### resolveViewName

          View resolveViewName(String viewName,
                             Locale locale)
                               throws Exception

      Resolve the given view by name.

      Note: To allow for ViewResolver chaining, a ViewResolver should return `null` if a view with the given name is not defined in it. However, this is not required: Some ViewResolvers will always attempt to build View objects with the given name, unable to return `null` (rather throwing an exception when View creation failed).

      Parameters:
        `viewName` - name of the view to resolve
        `locale` - Locale in which to resolve the view. ViewResolvers that support internationalization should respect this.
      Returns:
        the View object, or `null` if not found (optional, to allow for ViewResolver chaining)
      Throws:
        `Exception` - if the view cannot be resolved (typically in case of problems creating an actual View object)