Interface ViewResolver

All Known Implementing Classes:
AbstractCachingViewResolver, AbstractTemplateViewResolver, BeanNameViewResolver, ContentNegotiatingViewResolver, FreeMarkerViewResolver, GroovyMarkupViewResolver, InternalResourceViewResolver, ResourceBundleViewResolver, ScriptTemplateViewResolver, UrlBasedViewResolver, ViewResolverComposite, 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:
  • Method Summary

    Modifier and Type
    Method
    Description
    resolveViewName(String viewName, Locale locale)
    Resolve the given view by name.
  • Method Details

    • resolveViewName

      @Nullable 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 - the 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)