nl.gx.webmanager.springmvc.controller.component
Class ComponentController

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.BaseCommandController
                      extended by org.springframework.web.servlet.mvc.AbstractFormController
                          extended by org.springframework.web.servlet.mvc.SimpleFormController
                              extended by nl.gx.webmanager.springmvc.controller.BaseWebmanagerController
                                  extended by nl.gx.webmanager.springmvc.controller.component.ComponentController
All Implemented Interfaces:
DelegatedController, ComponentAware, org.springframework.context.ApplicationContextAware, org.springframework.web.context.ServletContextAware, org.springframework.web.servlet.mvc.Controller
Direct Known Subclasses:
ElementComponentController, ExtensionSubTabController, MediaItemComponentController, PageMetaDataComponentController, PanelComponentController, TreeActionTabController

public abstract class ComponentController
extends BaseWebmanagerController
implements ComponentAware, DelegatedController

This class is the base class for component controllers. Component controllers are controllers that are registered by a component. These controllers are not running in the Spring application context but controller methods are delegated to it by a MainSpringController which does run inside the Spring application context.

Since:
WebManager 9.0.8
Author:
ivol

Field Summary
 
Fields inherited from class nl.gx.webmanager.springmvc.controller.BaseWebmanagerController
formBackingObject, PROTOCOL_PROCESSED_KEY
 
Fields inherited from class org.springframework.web.servlet.mvc.BaseCommandController
DEFAULT_COMMAND_NAME
 
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
ComponentController()
           
 
Method Summary
 void addEditView(java.lang.String jspLocation, java.lang.String viewName)
          Adds an edit view to the registered edit views of this controller.
 void addEditView(java.lang.String jspLocation, java.lang.String viewName, Component component)
           
protected  void createResourceBaseNames(java.lang.Object command)
          Callback to add resource base names.
 java.lang.Object formBackingObject(javax.servlet.http.HttpServletRequest request)
          Retrieve a form backing object for the current form from the given request.
 java.lang.String getBundleDefinitionId()
          Return the configured bundleId for this controller
protected  Component getComponent()
          Return the component to which this controller belongs
 DelegatedController getParentController()
           
protected  org.springframework.web.servlet.ModelAndView onSubmit(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.Object command, org.springframework.validation.BindException errors)
          Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.
protected  org.springframework.web.servlet.ModelAndView onSubmit(java.lang.Object command)
          Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.
protected  org.springframework.web.servlet.ModelAndView onSubmit(java.lang.Object command, org.springframework.validation.BindException errors)
          Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.
protected  java.util.Map<java.lang.String,java.lang.Object> referenceData(javax.servlet.http.HttpServletRequest request)
           
 void setBundleDefinitionId(java.lang.String bundleDefinitionId)
          Set the bundleId for this controller
 void setComponent(Component component)
          Sets the component to which this controller belongs, called by the component manager when the controller is created
 void setDelegatedControllers(java.lang.Object formbackingObject, javax.servlet.http.HttpServletRequest request)
          Called by extension consumer in formBackingObject(...) method of controller
 void setParentController(DelegatedController parentController)
           
 org.springframework.web.servlet.ModelAndView showForm(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.validation.BindException errors, java.util.Map controlModel)
          Returns the Model and view to be used when rendering the form backing object that is returned by this controller
 
Methods inherited from class nl.gx.webmanager.springmvc.controller.BaseWebmanagerController
addControllerDelegation, addDisallowedField, addEditView, addEditViews, addResourceBaseName, addValidator, createEditViews, getControllerDelegationMap, getEditContext, getEditLanguageLabel, getEditView, getEditViewByValue, getEditViews, getPresentationContext, getResourceBaseNames, getServletContextHack, getVersion, getWebsite, getWebsiteByRequest, getWmSession, initBinder, initialize, isReloadWebManager, onBind, onBindAndValidate, onSubmit, popNestedPath, pushNestedPath, referenceData, removeControllerDelegation, setReloadWebManager, showForm
 
Methods inherited from class org.springframework.web.servlet.mvc.SimpleFormController
doSubmitAction, getFormView, getSuccessView, isFormChangeRequest, isFormChangeRequest, onFormChange, onFormChange, processFormSubmission, setFormView, setSuccessView, suppressValidation
 
Methods inherited from class org.springframework.web.servlet.mvc.AbstractFormController
currentFormObject, getCommand, getErrorsForNewForm, getFormSessionAttributeName, getFormSessionAttributeName, handleInvalidSubmit, handleRequestInternal, isBindOnNewForm, isFormSubmission, isSessionForm, onBindOnNewForm, onBindOnNewForm, setBindOnNewForm, setSessionForm, showForm, showForm, showNewForm
 
Methods inherited from class org.springframework.web.servlet.mvc.BaseCommandController
bindAndValidate, checkCommand, createBinder, createCommand, getBindingErrorProcessor, getCommandClass, getCommandName, getMessageCodesResolver, getPropertyEditorRegistrars, getValidator, getValidators, getWebBindingInitializer, initApplicationContext, isValidateOnBinding, onBind, prepareBinder, setBindingErrorProcessor, setCommandClass, setCommandName, setMessageCodesResolver, setPropertyEditorRegistrar, setPropertyEditorRegistrars, setValidateOnBinding, setValidator, setValidators, setWebBindingInitializer, suppressBinding, suppressValidation, suppressValidation, useDirectFieldAccess
 
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, requiredContextClass, setApplicationContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface nl.gx.webmanager.springmvc.DelegatedController
addValidator, getControllerDelegationMap, getEditView, getEditViewByValue, getResourceBaseNames, getValidators, initBinder, initialize, onBind, onBindAndValidate, onSubmit, referenceData
 

Constructor Detail

ComponentController

public ComponentController()
Method Detail

getBundleDefinitionId

public java.lang.String getBundleDefinitionId()
Return the configured bundleId for this controller

Returns:
the bundleId

setBundleDefinitionId

public void setBundleDefinitionId(java.lang.String bundleDefinitionId)
Set the bundleId for this controller

Parameters:
bundleDefinitionId -

onSubmit

protected final org.springframework.web.servlet.ModelAndView onSubmit(javax.servlet.http.HttpServletRequest request,
                                                                      javax.servlet.http.HttpServletResponse response,
                                                                      java.lang.Object command,
                                                                      org.springframework.validation.BindException errors)
                                                               throws java.lang.Exception
Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.

Overrides:
onSubmit in class org.springframework.web.servlet.mvc.SimpleFormController
Throws:
java.lang.Exception

onSubmit

protected final org.springframework.web.servlet.ModelAndView onSubmit(java.lang.Object command)
                                                               throws java.lang.Exception
Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.

Overrides:
onSubmit in class org.springframework.web.servlet.mvc.SimpleFormController
Throws:
java.lang.Exception

onSubmit

protected final org.springframework.web.servlet.ModelAndView onSubmit(java.lang.Object command,
                                                                      org.springframework.validation.BindException errors)
                                                               throws java.lang.Exception
Marked final to prevent developers from trying to overrule the method which wouldn't work since this is a delegated controller not running inside the spring application context.

Overrides:
onSubmit in class org.springframework.web.servlet.mvc.SimpleFormController
Throws:
java.lang.Exception

showForm

public org.springframework.web.servlet.ModelAndView showForm(javax.servlet.http.HttpServletRequest request,
                                                             javax.servlet.http.HttpServletResponse response,
                                                             org.springframework.validation.BindException errors,
                                                             java.util.Map controlModel)
                                                      throws java.lang.Exception
Returns the Model and view to be used when rendering the form backing object that is returned by this controller

Specified by:
showForm in interface DelegatedController
Overrides:
showForm in class org.springframework.web.servlet.mvc.SimpleFormController
Parameters:
request - current servlet request
response - current servlet response
errors - Errors instance without errors (subclass can add errors if it wants to)
controlModel - The model
Returns:
The model and view to be used when rendering the form backing object
Throws:
java.lang.Exception - in case of errors

referenceData

protected final java.util.Map<java.lang.String,java.lang.Object> referenceData(javax.servlet.http.HttpServletRequest request)
                                                                        throws java.lang.Exception
Overrides:
referenceData in class org.springframework.web.servlet.mvc.SimpleFormController
Throws:
java.lang.Exception

addEditView

public void addEditView(java.lang.String jspLocation,
                        java.lang.String viewName)
Adds an edit view to the registered edit views of this controller. If an edit view is added with a viewName that already exists the existing edit view will be replaced with the new edit view

Parameters:
jspLocation - JSP location of the view to add
viewName - Logical name of the view to add editViews Array of EditView object to set

setComponent

public void setComponent(Component component)
Sets the component to which this controller belongs, called by the component manager when the controller is created

Specified by:
setComponent in interface ComponentAware
Parameters:
component - component to set

getComponent

protected Component getComponent()
Return the component to which this controller belongs

Returns:
the component to which this controller belongs

addEditView

public void addEditView(java.lang.String jspLocation,
                        java.lang.String viewName,
                        Component component)
Parameters:
jspLocation -
viewName -
component -

formBackingObject

public java.lang.Object formBackingObject(javax.servlet.http.HttpServletRequest request)
                                   throws javax.servlet.ServletException
Retrieve a form backing object for the current form from the given request. Override this method to return the form backing object

Specified by:
formBackingObject in interface DelegatedController
Overrides:
formBackingObject in class BaseWebmanagerController
Parameters:
request - current HTTP request
Returns:
the FormBackingObject
Throws:
java.lang.Exception - in case of invalid state or arguments
javax.servlet.ServletException - in case of errors

getParentController

public DelegatedController getParentController()

setParentController

public void setParentController(DelegatedController parentController)

setDelegatedControllers

public void setDelegatedControllers(java.lang.Object formbackingObject,
                                    javax.servlet.http.HttpServletRequest request)
                             throws javax.servlet.ServletException
Called by extension consumer in formBackingObject(...) method of controller

Parameters:
formbackingObject -
request -
Throws:
javax.servlet.ServletException

createResourceBaseNames

protected void createResourceBaseNames(java.lang.Object command)
Description copied from class: BaseWebmanagerController
Callback to add resource base names. Sub classes should implement this method, call the super and invoke addResourceBaseNames to add its own resource base names to the controller.

Specified by:
createResourceBaseNames in class BaseWebmanagerController


Copyright © 2007-2010 GX creative online development BV. All Rights Reserved.