org.springframework.web.servlet.mvc
Class ParameterizableViewController

java.lang.Object
  extended by org.springframework.context.support.ApplicationObjectSupport
      extended by org.springframework.web.context.support.WebApplicationObjectSupport
          extended by org.springframework.web.servlet.support.WebContentGenerator
              extended by org.springframework.web.servlet.mvc.AbstractController
                  extended by org.springframework.web.servlet.mvc.ParameterizableViewController
All Implemented Interfaces:
Aware, ApplicationContextAware, ServletContextAware, Controller

public class ParameterizableViewController
extends AbstractController

Trivial controller that always returns a named view. The view can be configured using an exposed configuration property. This controller offers an alternative to sending a request straight to a view such as a JSP. The advantage here is that the client is not exposed to the concrete view technology but rather just to the controller URL; the concrete view will be determined by the ViewResolver.

An alternative to the ParameterizableViewController is a MultiActionController, which can define a variety of handler methods that just return a plain ModelAndView instance for a given view name.

Workflow (and that defined by superclass):

  1. Request is received by the controller
  2. call to handleRequestInternal which just returns the view, named by the configuration property viewName. Nothing more, nothing less

Exposed configuration properties (and those defined by superclass):

name default description
viewName null the name of the view the viewResolver will use to forward to (if this property is not set, a null view name will be returned directing the caller to calculate the view name from the current request)

Author:
Rod Johnson, Juergen Hoeller, Keith Donald

Field Summary
 
Fields inherited from class org.springframework.web.servlet.support.WebContentGenerator
METHOD_GET, METHOD_HEAD, METHOD_POST
 
Fields inherited from class org.springframework.context.support.ApplicationObjectSupport
logger
 
Constructor Summary
ParameterizableViewController()
           
 
Method Summary
 String getViewName()
          Return the name of the view to delegate to.
protected  ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
          Return a ModelAndView object with the specified view name.
 void setViewName(String viewName)
          Set the name of the view to delegate to.
 
Methods inherited from class org.springframework.web.servlet.mvc.AbstractController
handleRequest, isSynchronizeOnSession, setSynchronizeOnSession
 
Methods inherited from class org.springframework.web.servlet.support.WebContentGenerator
applyCacheSeconds, applyCacheSeconds, cacheForSeconds, cacheForSeconds, checkAndPrepare, checkAndPrepare, getCacheSeconds, getSupportedMethods, isRequireSession, isUseCacheControlHeader, isUseCacheControlNoStore, isUseExpiresHeader, preventCaching, setCacheSeconds, setRequireSession, setSupportedMethods, setUseCacheControlHeader, setUseCacheControlNoStore, setUseExpiresHeader
 
Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
 
Methods inherited from class org.springframework.context.support.ApplicationObjectSupport
getApplicationContext, getMessageSourceAccessor, initApplicationContext, requiredContextClass, setApplicationContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParameterizableViewController

public ParameterizableViewController()
Method Detail

setViewName

public void setViewName(String viewName)
Set the name of the view to delegate to.


getViewName

public String getViewName()
Return the name of the view to delegate to.


handleRequestInternal

protected ModelAndView handleRequestInternal(HttpServletRequest request,
                                             HttpServletResponse response)
                                      throws Exception
Return a ModelAndView object with the specified view name. The content of RequestContextUtils.getInputFlashMap(javax.servlet.http.HttpServletRequest) is also added to the model.

Specified by:
handleRequestInternal in class AbstractController
Throws:
Exception
See Also:
getViewName()