org.kuali.rice.krad.uif.element
Class Action

java.lang.Object
  extended by org.kuali.rice.krad.datadictionary.DictionaryBeanBase
      extended by org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
          extended by org.kuali.rice.krad.uif.component.ComponentBase
              extended by org.kuali.rice.krad.uif.element.ContentElementBase
                  extended by org.kuali.rice.krad.uif.element.Action
All Implemented Interfaces:
Serializable, Cloneable, Copyable, DictionaryBean, UifDictionaryBean, Component, ScriptEventSupport, ContentElement, LifecycleElement, org.springframework.core.Ordered

public class Action
extends ContentElementBase

Field that presents an action that can be taken on the UI such as submitting the form or invoking a script.

Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.kuali.rice.krad.uif.component.ComponentBase
templateOptions
 
Fields inherited from class org.kuali.rice.krad.datadictionary.DictionaryBeanBase
componentCode, namespaceCode
 
Fields inherited from interface org.kuali.rice.krad.uif.component.Ordered
INITIAL_ORDER_VALUE
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
Action()
          Sets initial field values and initializes collections.
 
Method Summary
protected  void addActionDataSettingsValue(Map<String,String> valueMap, Map<String,String> defaults, String key, String value)
          Adds the value passed to the valueMap with the key specified, if the value does not match the value which already exists in defaults (to avoid having to write out extra data that can later be derived from the defaults in the js client-side).
 void addActionParameter(String parameterName, String parameterValue)
          Convenience method to add a parameter to the action parameters Map.
protected  void buildActionData(View view, Object model, LifecycleElement parent)
          Builds the data attributes that will be read client side to determine how to handle the action and the additional data that should be submitted with the action
 void completeValidation(ValidationTrace tracer)
          Validates different requirements of component compiling a series of reports detailing information on errors found in the component.
 String getActionEvent()
          Name of the event that will be set when the action is invoked
 String getActionIconPlacement()
          Gets the action icon placement.
 Image getActionImage()
          Image to use for the action
 String getActionImagePlacement()
          Gets the action image placement.
 String getActionLabel()
          Label text for the action
 String getActionParameter(String parameterName)
          Gets an action parameter by name.
 Map<String,String> getActionParameters()
          Parameters that should be sent when the action is invoked
 String getActionScript()
          Client side javascript to be executed when this actionField is clicked.
 ActionSecurity getActionSecurity()
          Action Security object that indicates what authorization (permissions) exist for the action.
 UrlInfo getActionUrl()
          Url to open when the action item is selected
 Map<String,String> getAdditionalSubmitData()
          Map of additional data that will be posted when the action is invoked.
 String getAjaxReturnType()
          Gets the return type for the ajax call
 List<String> getDisabledConditionControlNames()
          Gets a list of control names to add handlers to for disable functionality, cannot be set.
 String getDisabledConditionJs()
          Get the disable condition js derived from the springEL, cannot be set.
 String getDisabledReason()
          If the action field is disabled, gives a reason for why which will be displayed as a tooltip on the action field (button).
 List<String> getDisabledWhenChangedPropertyNames()
          Gets the property names of fields that when changed, will disable this component.
 List<String> getEnabledWhenChangedPropertyNames()
          Gets the property names of fields that when changed, will enable this component.
 String getErrorCallback()
          Gets the script which will be invoked when the action fails due to problems in the ajax call or the return of an incident report
 String getFocusOnIdAfterSubmit()
          The element to place focus on in the new page after the new page is retrieved.
 String getIconClass()
          The css class (some which exist in bootstrap css) to use to render an icon for this action.
 String getJumpToIdAfterSubmit()
          Gets the id to jump to after submit.
 String getJumpToNameAfterSubmit()
          The name to jump to in the next page, the element with this name will be jumped to automatically when the new page is retrieved after a submit.
 String getLoadingMessageText()
          Gets the loading message used by action's blockUI.
 String getMethodToCall()
          Name of the method that should be called when the action is selected
 String getNavigateToPageId()
          For an Action that is part of a NavigationGroup, the navigate to page id can be set to configure the page that should be navigated to when the action is selected.
 String getPreSubmitCall()
          Gets the script which needs to be invoked before the form is submitted
 String getRefreshId()
          Id for the component that should be refreshed after the action completes
 String getRefreshPropertyName()
          Property name for the DataField that should be refreshed after the action completes
 String getSuccessCallback()
          Gets the script which will be invoked on a successful ajax call
protected  void initializeComponentSecurity()
          Initializes (if necessary) the component security instance for the component type
 boolean isAjaxSubmit()
          When this property is set to true it will submit the form using Ajax instead of the browser submit.
 boolean isClearDirtyOnAction()
          True to make this action clear the dirty flag before submitting.
 boolean isDirtyOnAction()
          When true, this action will mark the form dirty by incrementing the dirty field count, but if this action refreshes the entire view this will be lost (most actions only refresh the page)
 boolean isDisableBlocking()
          Indicates whether blocking for the action should be disabled
 boolean isDisabled()
          Indicates whether the action (input or button) is disabled (doesn't allow interaction).
 boolean isDisplayResponseInLightBox()
          Indicates if the action response should be displayed in a lightbox.
 boolean isEvaluateDisabledOnKeyUp()
          Evaluate the disable condition on controls which disable it on each key up event.
 boolean isPerformActionAuthz()
          Indicates whether or not to perform action auth.
 boolean isPerformClientSideValidation()
          Indicates whether the form data should be validated on the client side.
 boolean isPerformDirtyValidation()
          Indicates whether or not to perform dirty validation.
 boolean isPerformLineActionAuthz()
          Indicates whether or not to perform line action auth.
 boolean isRenderInnerTextSpan()
          When true, a span will be rendered around the actionLabel text.
 void performApplyModel(Object model, LifecycleElement parent)
          Sets the disabledExpression, if any, evaluates it and sets the disabled property.
 void performFinalize(Object model, LifecycleElement parent)
          The following finalization is performed: Add methodToCall action parameter if set and setup event code for setting action parameters Invoke method to build the data attributes and submit data for the action Compose the final onclick script for the action Parses the disabled expressions, if any, to equivalent javascript and evaluates the disable/enable when changed property names The following finalization is done here: progressiveRender and conditionalRefresh variables are processed if set If any of the style properties were given, sets the style string on the style property Set the skipInTabOrder flag for nested components The last phase before the view is rendered
 void setActionEvent(String actionEvent)
          Setter for getActionEvent().
 void setActionIconPlacement(String actionIconPlacement)
          Setter for getActionIconPlacement().
 void setActionImage(Image actionImage)
          Setter for the action image field.
 void setActionImagePlacement(String actionImagePlacement)
          Set to TOP, BOTTOM, LEFT, RIGHT to position image at that location within the button.
 void setActionLabel(String actionLabel)
          Setter for the actions label.
 void setActionParameters(Map<String,String> actionParameters)
          Setter for getActionParameters().
 void setActionScript(String actionScript)
          Setter for getActionScript().
 void setActionUrl(UrlInfo actionUrl)
          Setter for getActionUrl().
 void setAdditionalSubmitData(Map<String,String> additionalSubmitData)
          Setter for map holding additional data to post.
 void setAjaxReturnType(String ajaxReturnType)
          Setter for the type of ajax return.
 void setAjaxSubmit(boolean ajaxSubmit)
          Setter for isAjaxSubmit().
 void setClearDirtyOnAction(boolean clearDirtyOnAction)
          Setter for isClearDirtyOnAction().
 void setComponentSecurity(ComponentSecurity componentSecurity)
          Override to assert a ActionSecurity instance is set.
 void setDirtyOnAction(boolean dirtyOnAction)
          Set to true, if this action is considered one that changes the form's data (makes the form dirty).
 void setDisableBlocking(boolean disableBlocking)
          Setter for disabling blocking when the action is invoked.
 void setDisabled(boolean disabled)
          Setter for the disabled indicator.
 void setDisabledConditionControlNames(List<String> disabledConditionControlNames)
          Set disabled condition control names.
protected  void setDisabledConditionJs(String disabledConditionJs)
          Sets the disabled condition javascript.
protected  void setDisabledExpression(String disabledExpression)
          Sets the disabled expression.
 void setDisabledReason(String disabledReason)
          Setter for the disabled reason text.
 void setDisabledWhenChangedPropertyNames(List<String> disabledWhenChangedPropertyNames)
          Sets the property names of fields that when changed, will disable this component.
 void setDisplayResponseInLightBox(boolean displayResponseInLightBox)
          Setter for indicating the response should be rendered in a lightbox.
 void setEnabledWhenChangedPropertyNames(List<String> enabledWhenChangedPropertyNames)
          Sets the property names of fields that when changed, will enable this component.
 void setErrorCallback(String errorCallback)
          Setter for getErrorCallback().
 void setEvaluateDisabledOnKeyUp(boolean evaluateDisabledOnKeyUp)
          Setter for isEvaluateDisabledOnKeyUp().
 void setFocusOnIdAfterSubmit(String focusOnIdAfterSubmit)
          Setter for getFocusOnIdAfterSubmit().
 void setIconClass(String iconClass)
          Setter for getIconClass().
 void setJumpToIdAfterSubmit(String jumpToIdAfterSubmit)
          The id to jump to in the next page, the element with this id will be jumped to automatically when the new page is retrieved after a submit.
 void setJumpToNameAfterSubmit(String jumpToNameAfterSubmit)
          Setter for getJumpToIdAfterSubmit().
 void setLoadingMessageText(String loadingMessageText)
          When this property is set, it is used in place of the loading message text used by the blockUI.
 void setMethodToCall(String methodToCall)
          Setter for the actions method to call.
 void setNavigateToPageId(String navigateToPageId)
          Setter for getNavigateToPageId().
 void setPerformActionAuthz(boolean performActionAuthz)
          Setter for isPerformActionAuthz().
 void setPerformClientSideValidation(boolean performClientSideValidation)
          Setter for the client side validation flag.
 void setPerformDirtyValidation(boolean performDirtyValidation)
          Setter for isPerformDirtyValidation().
 void setPerformLineActionAuthz(boolean performLineActionAuthz)
          Setter for isPerformActionAuthz().
 void setPreSubmitCall(String preSubmitCall)
          Setter for getPreSubmitCall().
 void setRefreshId(String refreshId)
          Setter for the getRefreshId().
 void setRefreshPropertyName(String refreshPropertyName)
          Setter for the property name of the DataField that should be refreshed.
 void setRenderInnerTextSpan(boolean renderInnerTextSpan)
          Setter for isRenderInnerTextSpan().
 void setSuccessCallback(String successCallback)
          Setter for successCallback.
protected  void setupRefreshAction(View view)
          When the action is updating a component sets up the refresh script for the component (found by the given refresh id or refresh property name.
 
Methods inherited from class org.kuali.rice.krad.uif.element.ContentElementBase
getComponentTypeName
 
Methods inherited from class org.kuali.rice.krad.uif.component.ComponentBase
addDataAttribute, addScriptDataAttribute, addStyleClass, addWrapperCssClass, appendToStyle, checkMutable, clone, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAdditionalTemplates, getAlign, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getContainerIdSuffix, getContext, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getId, getLibraryCssClasses, getMethodToCallOnRefresh, getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnInputScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, getOrder, getPhasePathMapping, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getScriptDataAttributes, getScriptDataAttributesJs, getSimpleDataAttributes, getStyle, getStyleClassesAsString, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getViewPath, getViewStatus, getWidth, getWrapperCssClasses, getWrapperCssClassesAsString, getWrapperStyle, initializePendingTasks, isDisableSessionPersistence, isDisclosedByAction, isEditAuthz, isFinal, isForceSessionPersistence, isHidden, isInitialized, isModelApplied, isMutable, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRender, isRendered, isResetDataOnRefresh, isRetrieveViaAjax, isSelfRendered, isSkipInTabOrder, isViewAuthz, notifyCompleted, performInitialization, pushAllToContext, pushObjectToContext, pushToPropertyReplacerContext, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setCellWidth, setColSpan, setComponentModifiers, setConditionalRefresh, setContainerIdSuffix, setContext, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setEditAuthz, setFinalizeMethodAdditionalArguments, setFinalizeMethodInvoker, setFinalizeMethodToCall, setForceSessionPersistence, setHidden, setId, setLibraryCssClasses, setMethodToCallOnRefresh, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnInputScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript, setOrder, setPhasePathMapping, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRender, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRetrieveViaAjax, setRowSpan, setScriptDataAttributes, setSelfRendered, setSkipInTabOrder, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setValign, setViewAuthz, setViewPath, setViewStatus, setWidth, setWrapperCssClasses, setWrapperStyle, skipLifecycle
 
Methods inherited from class org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
 
Methods inherited from class org.kuali.rice.krad.datadictionary.DictionaryBeanBase
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode, setComponentCode, setNamespaceCode
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.kuali.rice.krad.uif.component.Component
addDataAttribute, addScriptDataAttribute, addStyleClass, addWrapperCssClass, appendToStyle, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAdditionalTemplates, getAlign, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getLibraryCssClasses, getMethodToCallOnRefresh, getOrder, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getScriptDataAttributes, getScriptDataAttributesJs, getSimpleDataAttributes, getStyle, getStyleClassesAsString, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getWidth, getWrapperCssClasses, getWrapperStyle, isDisableSessionPersistence, isDisclosedByAction, isForceSessionPersistence, isHidden, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRendered, isResetDataOnRefresh, isRetrieveViaAjax, isSelfRendered, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setCellWidth, setColSpan, setComponentModifiers, setConditionalRefresh, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setForceSessionPersistence, setHidden, setLibraryCssClasses, setOrder, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRetrieveViaAjax, setRowSpan, setScriptDataAttributes, setSelfRendered, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setValign, setViewStatus, setWidth, setWrapperCssClasses, setWrapperStyle
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.uif.UifDictionaryBean
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.DictionaryBean
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode
 
Methods inherited from interface org.kuali.rice.krad.uif.util.LifecycleElement
checkMutable, getContainerIdSuffix, getContext, getId, getPhasePathMapping, getViewPath, getViewStatus, initializePendingTasks, isFinal, isInitialized, isModelApplied, isMutable, isRender, notifyCompleted, performInitialization, pushAllToContext, pushObjectToContext, setContainerIdSuffix, setContext, setId, setPhasePathMapping, setRender, setViewPath, skipLifecycle
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.Copyable
clone
 
Methods inherited from interface org.kuali.rice.krad.uif.component.ScriptEventSupport
getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnInputScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnInputScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript
 

Constructor Detail

Action

public Action()
Sets initial field values and initializes collections.

Method Detail

performApplyModel

public void performApplyModel(Object model,
                              LifecycleElement parent)
Sets the disabledExpression, if any, evaluates it and sets the disabled property.

Specified by:
performApplyModel in interface LifecycleElement
Overrides:
performApplyModel in class ComponentBase
Parameters:
model - top level object containing the data (could be the form or a
parent - parent component

performFinalize

public void performFinalize(Object model,
                            LifecycleElement parent)
The following finalization is performed: The following finalization is done here: The last phase before the view is rendered

Here final preparations can be made based on the updated view state.

Specified by:
performFinalize in interface LifecycleElement
Overrides:
performFinalize in class ComponentBase
Parameters:
model - - top level object containing the data
parent - - parent component

setupRefreshAction

protected void setupRefreshAction(View view)
When the action is updating a component sets up the refresh script for the component (found by the given refresh id or refresh property name.

Parameters:
view - view instance the action belongs to

buildActionData

protected void buildActionData(View view,
                               Object model,
                               LifecycleElement parent)
Builds the data attributes that will be read client side to determine how to handle the action and the additional data that should be submitted with the action

Note these data attributes will be exposed as a data map client side. The simple attributes (non object value) are also written out as attributes on the action element.

Parameters:
view - view instance the action belongs to
model - model object containing the view data
parent - component the holds the action

addActionDataSettingsValue

protected void addActionDataSettingsValue(Map<String,String> valueMap,
                                          Map<String,String> defaults,
                                          String key,
                                          String value)
Adds the value passed to the valueMap with the key specified, if the value does not match the value which already exists in defaults (to avoid having to write out extra data that can later be derived from the defaults in the js client-side).

Parameters:
valueMap - the data map being constructed
defaults - defaults for validation messages
key - the variable name being added
value - the value set on this object as a String equivalent

getMethodToCall

public String getMethodToCall()
Name of the method that should be called when the action is selected

For a server side call (clientSideCall is false), gives the name of the method in the mapped controller that should be invoked when the action is selected. For client side calls gives the name of the script function that should be invoked when the action is selected

Returns:
name of method to call

setMethodToCall

public void setMethodToCall(String methodToCall)
Setter for the actions method to call.

Parameters:
methodToCall - method to call

getActionLabel

public String getActionLabel()
Label text for the action

The label text is used by the template renderers to give a human readable label for the action. For buttons this generally is the button text, while for an action link it would be the links displayed text

Returns:
label for action

setActionLabel

public void setActionLabel(String actionLabel)
Setter for the actions label.

Parameters:
actionLabel - action label

isRenderInnerTextSpan

public boolean isRenderInnerTextSpan()
When true, a span will be rendered around the actionLabel text.

Returns:
true if rendering a span around actionLabel, false otherwise

setRenderInnerTextSpan

public void setRenderInnerTextSpan(boolean renderInnerTextSpan)
Setter for isRenderInnerTextSpan().

Parameters:
renderInnerTextSpan - property value

getActionImage

public Image getActionImage()
Image to use for the action

When the action image component is set (and render is true) the image will be used to present the action as opposed to the default (input submit). For action link templates the image is used for the link instead of the action link text

Returns:
action image

setActionImage

public void setActionImage(Image actionImage)
Setter for the action image field.

Parameters:
actionImage - action image

getIconClass

public String getIconClass()
The css class (some which exist in bootstrap css) to use to render an icon for this action.

Returns:
the icon css class

setIconClass

public void setIconClass(String iconClass)
Setter for getIconClass().

Parameters:
iconClass - property value

getNavigateToPageId

public String getNavigateToPageId()
For an Action that is part of a NavigationGroup, the navigate to page id can be set to configure the page that should be navigated to when the action is selected.

Support exists in the UifControllerBase for handling navigation between pages.

Returns:
id of page that should be rendered when the action item is selected

setNavigateToPageId

public void setNavigateToPageId(String navigateToPageId)
Setter for getNavigateToPageId().

Parameters:
navigateToPageId - property value

getActionEvent

public String getActionEvent()
Name of the event that will be set when the action is invoked

Action events can be looked at by the view or components in order to render differently depending on the action requested.

Returns:
action event name
See Also:
UifConstants.ActionEvents

setActionEvent

public void setActionEvent(String actionEvent)
Setter for getActionEvent().

Parameters:
actionEvent - property value

getAdditionalSubmitData

public Map<String,String> getAdditionalSubmitData()
Map of additional data that will be posted when the action is invoked.

Each entry in this map will be sent as a request parameter when the action is chosen. Note this in addition to the form data that is sent. For example, suppose the model contained a property named number and a boolean named showActive, we can send values for this properties by adding the following entries to this map: {'number':'a13', 'showActive', 'true'}

The additionalSubmitData map is different from the actionParameters map. All name/value pairs given as actionParameters populated the form map actionParameters. While name/value pair given in additionalSubmitData populate different form (model) properties.

Returns:
additional key/value pairs to submit

setAdditionalSubmitData

public void setAdditionalSubmitData(Map<String,String> additionalSubmitData)
Setter for map holding additional data to post.

Parameters:
additionalSubmitData - property value

getActionParameters

public Map<String,String> getActionParameters()
Parameters that should be sent when the action is invoked

Action renderer will decide how the parameters are sent for the action (via script generated hiddens, or script parameters, ...)

Can be set by other components such as the CollectionGroup to provide the context the action is in (such as the collection name and line the action applies to)

Returns:
action parameters

setActionParameters

public void setActionParameters(Map<String,String> actionParameters)
Setter for getActionParameters().

Parameters:
actionParameters - property value

addActionParameter

public void addActionParameter(String parameterName,
                               String parameterValue)
Convenience method to add a parameter to the action parameters Map.

Parameters:
parameterName - name of parameter to add
parameterValue - value of parameter to add

getActionParameter

public String getActionParameter(String parameterName)
Gets an action parameter by name.

Parameters:
parameterName - parameter name
Returns:
action parameter

getActionSecurity

public ActionSecurity getActionSecurity()
Action Security object that indicates what authorization (permissions) exist for the action.

Returns:
ActionSecurity instance

setComponentSecurity

public void setComponentSecurity(ComponentSecurity componentSecurity)
Override to assert a ActionSecurity instance is set.

Specified by:
setComponentSecurity in interface Component
Overrides:
setComponentSecurity in class ComponentBase
Parameters:
componentSecurity - instance of ActionSecurity

initializeComponentSecurity

protected void initializeComponentSecurity()
Initializes (if necessary) the component security instance for the component type

Overrides:
initializeComponentSecurity in class ComponentBase

isPerformActionAuthz

public boolean isPerformActionAuthz()
Indicates whether or not to perform action auth.

Returns:
true to perform action auth

setPerformActionAuthz

public void setPerformActionAuthz(boolean performActionAuthz)
Setter for isPerformActionAuthz().

Parameters:
performActionAuthz - property value

isPerformLineActionAuthz

public boolean isPerformLineActionAuthz()
Indicates whether or not to perform line action auth.

Returns:
true to perform line action auth

setPerformLineActionAuthz

public void setPerformLineActionAuthz(boolean performLineActionAuthz)
Setter for isPerformActionAuthz().

Parameters:
performLineActionAuthz - property value

getJumpToIdAfterSubmit

public String getJumpToIdAfterSubmit()
Gets the id to jump to after submit.

Returns:
the jumpToIdAfterSubmit

setJumpToIdAfterSubmit

public void setJumpToIdAfterSubmit(String jumpToIdAfterSubmit)
The id to jump to in the next page, the element with this id will be jumped to automatically when the new page is retrieved after a submit. Using "TOP" or "BOTTOM" will jump to the top or the bottom of the resulting page. Passing in nothing for both jumpToIdAfterSubmit and jumpToNameAfterSubmit will result in this Action being jumped to by default if it is present on the new page. WARNING: jumpToIdAfterSubmit always takes precedence over jumpToNameAfterSubmit, if set.

Parameters:
jumpToIdAfterSubmit - the jumpToIdAfterSubmit to set

getJumpToNameAfterSubmit

public String getJumpToNameAfterSubmit()
The name to jump to in the next page, the element with this name will be jumped to automatically when the new page is retrieved after a submit. Passing in nothing for both jumpToIdAfterSubmit and jumpToNameAfterSubmit will result in this Action being jumped to by default if it is present on the new page. WARNING: jumpToIdAfterSubmit always takes precedence over jumpToNameAfterSubmit, if set.

Returns:
the jumpToNameAfterSubmit

setJumpToNameAfterSubmit

public void setJumpToNameAfterSubmit(String jumpToNameAfterSubmit)
Setter for getJumpToIdAfterSubmit().

Parameters:
jumpToNameAfterSubmit - the jumpToNameAfterSubmit to set

getFocusOnIdAfterSubmit

public String getFocusOnIdAfterSubmit()
The element to place focus on in the new page after the new page is retrieved.

The following are allowed:

Returns:
the focusOnAfterSubmit

setFocusOnIdAfterSubmit

public void setFocusOnIdAfterSubmit(String focusOnIdAfterSubmit)
Setter for getFocusOnIdAfterSubmit().

Parameters:
focusOnIdAfterSubmit - the focusOnAfterSubmit to set

isPerformClientSideValidation

public boolean isPerformClientSideValidation()
Indicates whether the form data should be validated on the client side.

Returns:
true if validation should occur, false otherwise

setPerformClientSideValidation

public void setPerformClientSideValidation(boolean performClientSideValidation)
Setter for the client side validation flag.

Parameters:
performClientSideValidation - property value

getActionScript

public String getActionScript()
Client side javascript to be executed when this actionField is clicked.

This overrides the default action for this Action so the method called must explicitly submit, navigate, etc. through js, if necessary. In addition, this js occurs AFTER onClickScripts set on this field, it will be the last script executed by the click event. Sidenote: This js is always called after hidden actionParameters and methodToCall methods are written by the js to the html form.

Returns:
the actionScript

setActionScript

public void setActionScript(String actionScript)
Setter for getActionScript().

Parameters:
actionScript - the actionScript to set

getActionUrl

public UrlInfo getActionUrl()
Url to open when the action item is selected

This makes the action behave like a standard link. Instead of posting the form, the configured URL will simply be opened (using window.open). For using standard post actions these does not need to be configured.

Returns:
Url info instance for the configuration action link

setActionUrl

public void setActionUrl(UrlInfo actionUrl)
Setter for getActionUrl().

Parameters:
actionUrl - property value

setPerformDirtyValidation

public void setPerformDirtyValidation(boolean performDirtyValidation)
Setter for isPerformDirtyValidation().

Parameters:
performDirtyValidation - the blockValidateDirty to set

isPerformDirtyValidation

public boolean isPerformDirtyValidation()
Indicates whether or not to perform dirty validation.

Returns:
true to perform dirty validation

isClearDirtyOnAction

public boolean isClearDirtyOnAction()
True to make this action clear the dirty flag before submitting.

This will clear both the dirtyForm flag on the form and the count of fields considered dirty on the client-side. This will only be performed if this action is a request based action.

Returns:
true if the dirty

setClearDirtyOnAction

public void setClearDirtyOnAction(boolean clearDirtyOnAction)
Setter for isClearDirtyOnAction().

Parameters:
clearDirtyOnAction - property value

isDirtyOnAction

public boolean isDirtyOnAction()
When true, this action will mark the form dirty by incrementing the dirty field count, but if this action refreshes the entire view this will be lost (most actions only refresh the page)

This will increase count of fields considered dirty on the client-side by 1. This will only be performed if this action is a request based action.

Returns:
true if this action is considered dirty, false otherwise

setDirtyOnAction

public void setDirtyOnAction(boolean dirtyOnAction)
Set to true, if this action is considered one that changes the form's data (makes the form dirty).

Parameters:
dirtyOnAction - property value

isDisabled

public boolean isDisabled()
Indicates whether the action (input or button) is disabled (doesn't allow interaction).

Returns:
true if the action field is disabled, false if not

setDisabled

public void setDisabled(boolean disabled)
Setter for the disabled indicator.

Parameters:
disabled - property value

getDisabledReason

public String getDisabledReason()
If the action field is disabled, gives a reason for why which will be displayed as a tooltip on the action field (button).

Returns:
disabled reason text
See Also:
isDisabled()

setDisabledReason

public void setDisabledReason(String disabledReason)
Setter for the disabled reason text.

Parameters:
disabledReason - property value

getActionImagePlacement

public String getActionImagePlacement()
Gets the action image placement.

Returns:
action image placement

setActionImagePlacement

public void setActionImagePlacement(String actionImagePlacement)
Set to TOP, BOTTOM, LEFT, RIGHT to position image at that location within the button. For the subclass ActionLinkField only LEFT and RIGHT are allowed. When set to blank/null/IMAGE_ONLY, the image itself will be the Action, if no value is set the default is ALWAYS LEFT, you must explicitly set blank/null/IMAGE_ONLY to use ONLY the image as the Action.

Parameters:
actionImagePlacement - action image placement indicator

getActionIconPlacement

public String getActionIconPlacement()
Gets the action icon placement.

Returns:
action icon placement

setActionIconPlacement

public void setActionIconPlacement(String actionIconPlacement)
Setter for getActionIconPlacement().

Parameters:
actionIconPlacement - property value

getPreSubmitCall

public String getPreSubmitCall()
Gets the script which needs to be invoked before the form is submitted

The preSubmitCall can carry out custom logic for the action before the submit occurs. The value should be given as one or more lines of script and should return a boolean. If false is returned from the call, the submit is not carried out. Furthermore, the preSubmitCall can refer to the request object through the variable 'kradRequest' or 'this'. This gives full access over the request for doing such things as adding additional data

Examples 'return doFunction(kradRequest);', 'var valid=true;return valid;'

The preSubmit call will be invoked both for ajax and non-ajax submits

Returns:
script text that will be invoked before form submission

setPreSubmitCall

public void setPreSubmitCall(String preSubmitCall)
Setter for getPreSubmitCall().

Parameters:
preSubmitCall - property value

isAjaxSubmit

public boolean isAjaxSubmit()
When this property is set to true it will submit the form using Ajax instead of the browser submit. Will default to updating the page contents

Returns:
boolean

setAjaxSubmit

public void setAjaxSubmit(boolean ajaxSubmit)
Setter for isAjaxSubmit().

Parameters:
ajaxSubmit - property value

getAjaxReturnType

public String getAjaxReturnType()
Gets the return type for the ajax call

The ajax return type indicates how the response content will be handled in the client. Typical examples include updating a component, the page, or doing a redirect.

Returns:
return type
See Also:
UifConstants.AjaxReturnTypes

setAjaxReturnType

public void setAjaxReturnType(String ajaxReturnType)
Setter for the type of ajax return.

Parameters:
ajaxReturnType - property value

isDisplayResponseInLightBox

public boolean isDisplayResponseInLightBox()
Indicates if the action response should be displayed in a lightbox.

Returns:
true if response should be rendered in a lightbox, false if not

setDisplayResponseInLightBox

public void setDisplayResponseInLightBox(boolean displayResponseInLightBox)
Setter for indicating the response should be rendered in a lightbox.

Parameters:
displayResponseInLightBox - property value

getSuccessCallback

public String getSuccessCallback()
Gets the script which will be invoked on a successful ajax call

The successCallback can carry out custom logic after a successful ajax submission has been made. The value can contain one or more script statements. In addition, the response contents can be accessed through the variable 'responseContents'

Examples 'handleSuccessfulUpdate(responseContents);'

The successCallback may only be specified when isAjaxSubmit() is true

Returns:
script to be executed when the action is successful

setSuccessCallback

public void setSuccessCallback(String successCallback)
Setter for successCallback.

Parameters:
successCallback - property value

getErrorCallback

public String getErrorCallback()
Gets the script which will be invoked when the action fails due to problems in the ajax call or the return of an incident report

The errorCallback can carry out custom logic after a failed ajax submission. The value can contain one or more script statements. In addition, the response contents can be accessed through the variable 'responseContents'

Examples 'handleFailedUpdate(responseContents);'

The errorCallback may only be specified when isAjaxSubmit() is true

Returns:
script to be executed when the action is successful

setErrorCallback

public void setErrorCallback(String errorCallback)
Setter for getErrorCallback().

Parameters:
errorCallback - property value

getRefreshId

public String getRefreshId()
Id for the component that should be refreshed after the action completes

Either refresh id or refresh property name can be set to configure the component that should be refreshed after the action completes. If both are blank, the page will be refreshed

Returns:
valid component id

setRefreshId

public void setRefreshId(String refreshId)
Setter for the getRefreshId().

Parameters:
refreshId - property value

getRefreshPropertyName

public String getRefreshPropertyName()
Property name for the DataField that should be refreshed after the action completes

Either refresh id or refresh property name can be set to configure the component that should be refreshed after the action completes. If both are blank, the page will be refreshed

Property name will be adjusted to use the default binding path unless it contains the form prefix

Returns:
valid property name with an associated DataField
See Also:
UifConstants.NO_BIND_ADJUST_PREFIX

setRefreshPropertyName

public void setRefreshPropertyName(String refreshPropertyName)
Setter for the property name of the DataField that should be refreshed.

Parameters:
refreshPropertyName - property value

getLoadingMessageText

public String getLoadingMessageText()
Gets the loading message used by action's blockUI.

Returns:
String if String is not null, used in place of loading message

setLoadingMessageText

public void setLoadingMessageText(String loadingMessageText)
When this property is set, it is used in place of the loading message text used by the blockUI.

Parameters:
loadingMessageText - property value

isDisableBlocking

public boolean isDisableBlocking()
Indicates whether blocking for the action should be disabled

By default when an action is invoked part of the page or the entire window is blocked until the action completes. If this property is set to true the blocking will not be displayed.

Currently if an action returns a file download, this property should be set to true. If not, the blocking will never get unblocked (because the page does not get notification a file was downloaded)

Returns:
true if blocking should be disabled, false if not

setDisableBlocking

public void setDisableBlocking(boolean disableBlocking)
Setter for disabling blocking when the action is invoked.

Parameters:
disableBlocking - property value

isEvaluateDisabledOnKeyUp

public boolean isEvaluateDisabledOnKeyUp()
Evaluate the disable condition on controls which disable it on each key up event.

Returns:
true if evaluate on key up, false otherwise

setEvaluateDisabledOnKeyUp

public void setEvaluateDisabledOnKeyUp(boolean evaluateDisabledOnKeyUp)
Setter for isEvaluateDisabledOnKeyUp().

Parameters:
evaluateDisabledOnKeyUp - property value

getDisabledConditionJs

public String getDisabledConditionJs()
Get the disable condition js derived from the springEL, cannot be set.

Returns:
the disableConditionJs javascript to be evaluated

setDisabledConditionJs

protected void setDisabledConditionJs(String disabledConditionJs)
Sets the disabled condition javascript.

Parameters:
disabledConditionJs - property value

getDisabledConditionControlNames

public List<String> getDisabledConditionControlNames()
Gets a list of control names to add handlers to for disable functionality, cannot be set.

Returns:
control names to add handlers to for disable

setDisabledConditionControlNames

public void setDisabledConditionControlNames(List<String> disabledConditionControlNames)
Set disabled condition control names.

Parameters:
disabledConditionControlNames - property value

getDisabledWhenChangedPropertyNames

public List<String> getDisabledWhenChangedPropertyNames()
Gets the property names of fields that when changed, will disable this component.

Returns:
the property names to monitor for change to disable this component

setDisabledWhenChangedPropertyNames

public void setDisabledWhenChangedPropertyNames(List<String> disabledWhenChangedPropertyNames)
Sets the property names of fields that when changed, will disable this component.

Parameters:
disabledWhenChangedPropertyNames - property value

getEnabledWhenChangedPropertyNames

public List<String> getEnabledWhenChangedPropertyNames()
Gets the property names of fields that when changed, will enable this component.

Returns:
the property names to monitor for change to enable this component

setEnabledWhenChangedPropertyNames

public void setEnabledWhenChangedPropertyNames(List<String> enabledWhenChangedPropertyNames)
Sets the property names of fields that when changed, will enable this component.

Parameters:
enabledWhenChangedPropertyNames - property value

setDisabledExpression

protected void setDisabledExpression(String disabledExpression)
Sets the disabled expression.

Parameters:
disabledExpression - property value

completeValidation

public void completeValidation(ValidationTrace tracer)
Validates different requirements of component compiling a series of reports detailing information on errors found in the component. Used by the RiceDictionaryValidator.

Specified by:
completeValidation in interface Component
Overrides:
completeValidation in class ComponentBase
Parameters:
tracer - Record of component's location


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.