public interface Component extends UifDictionaryBean, LifecycleElement, Serializable, Ordered, ScriptEventSupport
All classes of the UIF that are used as a rendering element implement the component interface. All components within the framework have the following structure:
There are three basic types of components:
View
, Group
Field
Widget
INITIAL_ORDER_VALUE
Modifier and Type | Method and Description |
---|---|
void |
addAriaAttribute(String key,
String value)
Add an aria attribute to the ariaAttributes list
|
void |
addDataAttribute(String key,
String value)
Add a data attribute to the dataAttributes map
|
void |
addScriptDataAttribute(String key,
String value)
Add a script data attribute to the scriptDataAttributes map
|
void |
addStyleClass(String styleClass)
Adds a single style to the list of styles on this component
|
void |
addWrapperCssClass(String cssClass)
Add a cell css class to the cell classes list
|
void |
afterEvaluateExpression()
Invoked by the view lifecycle after expressions are evaluated at the apply model phase.
|
void |
appendToStyle(String itemStyle)
Appends to the inline style set on a component
|
void |
completeValidation(ValidationTrace tracer)
Validates different requirements of component compiling a series of reports detailing information on errors
found in the component.
|
List<String> |
getAdditionalComponentsToRefresh()
Returns a list of componentIds which will be also be refreshed when this component is refreshed
|
String |
getAdditionalComponentsToRefreshJs()
Returns a string for representing the list of additional components to be refreshed as
a JavaScript value
|
List<String> |
getAdditionalCssClasses()
Convenience property for adding css class names to the end of the list of cssClasses that may already exist on
this Component (this is to avoid explicitly having to set list merge in the bean definition)
|
List<String> |
getAdditionalTemplates()
Gets additional templates that will be required during the rendering of this component.
|
String |
getAlign()
Horizontal alignment of the component within its container
|
Map<String,String> |
getAriaAttributes()
The aria attributes of this component and their values
(without "aria-", this is automatically appended during rendering)
|
String |
getAriaAttributesAsString()
Get the aria attributes as a String that can be used during template output
|
Boolean |
getCanCopyOnReadOnly()
Indicates whether the component should be cleared on copy
|
String |
getCellWidth()
Width setting for the cell containing the component (only applies within table based
layouts)
|
int |
getColSpan()
Number of places the component should take up horizontally in the
container; when using a CssGridLayoutManager this is converted to the appropriate medium size.
|
List<ComponentModifier> |
getComponentModifiers()
ComponentModifier instances that should be invoked to
initialize the component |
ComponentSecurity |
getComponentSecurity()
Security object that indicates what authorization (permissions) exist for the component
|
String |
getComponentTypeName()
The name for the component type
|
String |
getConditionalRefresh()
Spring EL expression, which when evaluates to true, causes this component to be refreshed
|
String |
getConditionalRefreshConditionJs()
A JavaScript expression constructed from
getProgressiveRender() |
List<String> |
getConditionalRefreshControlNames()
The list of control names (ids) extracted from
getConditionalRefresh() |
Map<String,Object> |
getContext()
Context map for the component
|
List<String> |
getCssClasses()
CSS style class(s) to be applied to the component
|
CssGridSizes |
getCssGridSizes()
CssGridSizes represent the size (width) the content's div "cell" will take up in the "row" at each screen
size (extra small, small, medium, large) when using a group backed by a CssGridLayoutManager.
|
Map<String,String> |
getDataAttributes()
The DataAttributes that will be written to the html element for this component as data-
|
String |
getEventHandlerScript()
String containing JavaScript code for registering event handlers for this component
(blur, focus, click, etc.)
|
String |
getExcludeIf()
Names a model property path, which if set and resolves to true, indicates that this component
should be excluded from the lifecycle at the initialize phase.
|
String |
getExcludeUnless()
Names a model property path, which if set and resolves to null or false, indicates that this
component should be excluded from the lifecycle at the initialize phase.
|
List<String> |
getFieldsToSendOnRefresh()
Limits the field data to send on a refresh methodToCall server call to the names/group id/field id
specified in this list.
|
List<Object> |
getFinalizeMethodAdditionalArguments()
The List of Object instances that should be passed as arguments to the finalize method
|
MethodInvokerConfig |
getFinalizeMethodInvoker()
MethodInvokerConfig instance for the method that should be invoked
for finalizing the component configuration |
String |
getFinalizeMethodToCall()
The name of the method that should be invoked for finalizing the component
configuration (full method name, without parameters or return type)
|
List<String> |
getLibraryCssClasses() |
String |
getMethodToCallOnRefresh()
Gets the method to call on refresh.
|
int |
getOrder()
Order of a component within a List of other components
|
String |
getPostRenderContent()
Raw html or string content to render after this component renders
|
String |
getPreRenderContent()
Raw html or string content to render before this component renders
|
String |
getProgressiveDisclosureConditionJs()
A JavaScript expression constructed from
getConditionalRefresh() |
List<String> |
getProgressiveDisclosureControlNames()
List of control names (ids) extracted from
getProgressiveRender() |
String |
getProgressiveRender()
Spring EL expression, which when evaluates to true, makes this component visible
|
List<Component> |
getPropertyReplacerComponents()
List of components that are contained within the List of
PropertyReplacer in component |
List<PropertyReplacer> |
getPropertyReplacers()
gets a list of
PropertyReplacer instances |
Boolean |
getReadOnly()
Indicates whether the component can be edited
|
int |
getRefreshTimer()
Time in seconds after which the component is automatically refreshed
|
List<String> |
getRefreshWhenChangedPropertyNames()
Specifies a property by name that when its value changes will automatically perform
a refresh on this component
|
String |
getRenderedHtmlOutput()
Rendering output for the component that will be sent as part of the
response (can contain static text and HTML)
|
Boolean |
getRequired()
Indicates whether the component is required
|
String |
getRole()
The role attribute of this component, use to define aria roles
|
int |
getRowSpan()
Number of places the component should take up vertically in the container
|
Map<String,String> |
getScriptDataAttributes()
The DataAttributes that will be written to the html as a script call to data for this component (these cannot be
used for jQuery selection directly)
|
String |
getScriptDataAttributesJs()
Returns a js string that can be used to right js data attributes to for the component
|
String |
getSimpleDataAttributes()
The string that can be put into a the tag of a component to add data attributes inline
|
String |
getStyle()
CSS style string to be applied to the component
|
String |
getStyleClassesAsString()
Gets a string representing all CSS style classes.
|
String |
getTemplate()
The path to the JSP file that should be called to render the component
|
String |
getTemplateName()
The name for which the template can be invoked by
|
Map<String,String> |
getTemplateOptions()
The options that are passed through to the Component renderer
|
String |
getTemplateOptionsJSString()
Builds a string from the underlying
Map of template options that will export that options as a
JavaScript Map for use in js and jQuery plugins |
String |
getTitle()
The component title
|
Tooltip |
getToolTip()
The Tooltip widget that renders a tooltip with additional information about the element on
specified trigger event
|
String |
getValign()
Vertical alignment of the component within its container
|
String |
getWidth()
Width the component should take up in the container
|
List<String> |
getWrapperCssClasses()
The cellCssClasses property defines the classes that will be placed on the corresponding td (or th) elements
relating to this component when used in a table backed layout.
|
String |
getWrapperStyle()
CSS style string to be applied to the cell containing the component (only applies within
table based layouts)
|
boolean |
isDisableSessionPersistence()
Disables the storage of the component in session (when the framework determines it needs to be due to a
refresh condition)
|
boolean |
isDisclosedByAction()
If true if this component is disclosed by an action in js, a placeholder will be put in this components place
if render is also false.
|
boolean |
isForceSessionPersistence()
Indicates whether the component should be stored with the session view regardless of configuration
|
boolean |
isHidden()
Indicates whether the component should be hidden in the UI
|
boolean |
isOmitFromFormPost()
Whether to omit fields from form post unless they are explicitly specified by the
Action.fieldsToSend property. |
boolean |
isProgressiveRenderAndRefresh()
Determines whether the component will always be retrieved from the server and shown
|
boolean |
isProgressiveRenderViaAJAX()
Indicates whether the component will be stored on the client, but hidden, after the first retrieval
|
boolean |
isRefreshedByAction()
Indicates the component can be refreshed by an action
|
boolean |
isRendered()
Indicates whether the component has been fully rendered.
|
boolean |
isResetDataOnRefresh()
Indicates whether data contained within the component should be reset (set to default) when the
component is refreshed
|
boolean |
isRetrieveViaAjax()
When true, this component will render as a placeholder component instead of rendering normally because the
content will be later retrieved through manually ajax retrieval calls in the js
|
boolean |
isSelfRendered()
Indicates whether the component contains its own render output (through
the renderOutput property)
|
void |
setAdditionalComponentsToRefresh(List<String> additionalComponentsToRefresh)
Setter for alsoRefreshComponents
|
void |
setAdditionalCssClasses(List<String> styleClasses)
Set the additionalCssClasses
|
void |
setAlign(String align)
Sets the components horizontal alignment
|
void |
setAriaAttributes(Map<String,String> ariaAttributes) |
void |
setCanCopyOnReadOnly(Boolean canCopyOnReadOnly)
Setter for the canCopyOnReadOnly indicator
|
void |
setCellWidth(String cellWidth)
Setter for the containing cell width
|
void |
setColSpan(int colSpan)
Setter for the components column span
|
void |
setComponentModifiers(List<ComponentModifier> componentModifiers)
Setter for the components List of
ComponentModifier
instances |
void |
setComponentSecurity(ComponentSecurity componentSecurity)
Setter for the components security object
|
void |
setConditionalRefresh(String conditionalRefresh)
Setter for conditionalRefresh Spring EL expression
|
void |
setContext(Map<String,Object> context)
Setter for the context Map
|
void |
setCssClasses(List<String> styleClasses)
Setter for the components style classes
|
void |
setCssGridSizes(CssGridSizes cssGridSizes) |
void |
setDataAttributes(Map<String,String> dataAttributes)
Setter for data attributes to include for the component
|
void |
setDisableSessionPersistence(boolean disableSessionPersistence)
Setter for disabling storage of the component in session
|
void |
setDisclosedByAction(boolean disclosedByAction)
Set if this component is disclosed by some outside action
|
void |
setFieldsToSendOnRefresh(List<String> fieldsToSendOnRefresh) |
void |
setForceSessionPersistence(boolean persistInSession)
Setter for the indicator to force persistence of the component in session
|
void |
setHidden(boolean hidden)
Setter for the hidden indicator
|
void |
setLibraryCssClasses(List<String> libraryCssClasses) |
void |
setOmitFromFormPost(boolean omitFromFormPost) |
void |
setOrder(int order)
Setter for the component's order
|
void |
setPostRenderContent(String postRenderContent)
Set the postRenderContent
|
void |
setPreRenderContent(String preRenderContent)
Set the preRenderContent
|
void |
setProgressiveRender(String progressiveRender)
Setter for progressiveRender Spring EL expression
|
void |
setProgressiveRenderAndRefresh(boolean progressiveRenderAndRefresh)
Setter for the progressiveRenderAndRefresh flag
|
void |
setProgressiveRenderViaAJAX(boolean progressiveRenderViaAJAX)
Setter for the progressiveRenderViaAJAX flag
|
void |
setPropertyReplacers(List<PropertyReplacer> propertyReplacers)
Setter for the components property substitutions
|
void |
setReadOnly(Boolean readOnly)
Setter for the read only indicator
|
void |
setRefreshedByAction(boolean refreshedByAction)
Setter for the refreshed by action indicator
|
void |
setRefreshTimer(int refreshTimer)
Setter for refreshTimer
|
void |
setRefreshWhenChangedPropertyNames(List<String> refreshWhenChangedPropertyNames)
Setter for the list of property names that trigger a refresh
|
void |
setRenderedHtmlOutput(String renderOutput)
Setter for the component's render output
|
void |
setRequired(Boolean required)
Setter for the required indicator
|
void |
setResetDataOnRefresh(boolean resetDataOnRefresh)
Setter for the reset data on refresh indicator
|
void |
setRetrieveViaAjax(boolean useAjaxCallForContent)
When true, this component will render as a placeholder component instead of rendering normally because the
content will be later retrieved through manually ajax retrieval calls in the js
|
void |
setRole(String role) |
void |
setRowSpan(int rowSpan)
Setter for the component row span
|
void |
setScriptDataAttributes(Map<String,String> dataAttributes)
Setter for script data attributes to include for the component
|
void |
setSelfRendered(boolean selfRendered)
Setter for the self render indicator
|
void |
setStyle(String style)
Setter for the components style
|
void |
setTemplate(String template)
Setter for the components template
|
void |
setTemplateName(String templateName)
Setter for the name of the template (a name which can be used to invoke)
|
void |
setTemplateOptions(Map<String,String> templateOptions)
Setter for the template's options
|
void |
setTemplateOptionsJSString(String templateOptionsJSString)
Setter for the template's options
|
void |
setTitle(String title)
Setter for the component's title
|
void |
setToolTip(Tooltip toolTip)
Setter for the component tooltip widget instance
|
void |
setValign(String valign)
Setter for the component's vertical align
|
void |
setViewStatus(String status)
Set the view lifecycle processing status for this component, explicitly.
|
void |
setWidth(String width)
Setter for the components width
|
void |
setWrapperCssClasses(List<String> cellCssClasses)
Set the cellCssClasses property which defines the classes that will be placed on the corresponding td (or th)
relating to this component when used in a table backed layout.
|
void |
setWrapperStyle(String cellStyle)
Setter for the cell style attribute
|
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode
checkMutable, getContainerIdSuffix, getId, getPhasePathMapping, getViewPath, getViewStatus, isFinal, isInitialized, isModelApplied, isMutable, isRender, notifyCompleted, performApplyModel, performFinalize, performInitialization, pushAllToContext, pushObjectToContext, setContainerIdSuffix, setId, setPhasePathMapping, setRender, setViewPath, skipLifecycle
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
String getComponentTypeName()
This is used within the rendering layer to pass the component instance into the template. The component instance is exported under the name given by this method.
boolean isRendered()
void afterEvaluateExpression()
In general, this method is preferred to LifecycleElement.performApplyModel(Object, LifecycleElement)
for populating model data via code, since it is called before client-side state is synchronize.
void setViewStatus(String status)
setViewStatus
in interface LifecycleElement
status
- The view status for this component.LifecycleElement.getViewStatus()
String getTemplate()
The path should be relative to the web root. An attribute will be available to the component to use under the
name given by the method getComponentTypeName
. Based on the component type, additional attributes could
be available for use. See the component documentation for more information on such attributes.
e.g. '/krad/WEB-INF/jsp/tiles/component.jsp'
void setTemplate(String template)
template
- List<String> getAdditionalTemplates()
If a parent or sibling component is referred to by this component's template, include that component's template here to ensure that it has been compiled already during bottom-up inline rendering.
String getTemplateName()
Whether the template name is needed depends on the underlying rendering engine being used. In the example of Freemarker, the template points to the actual source file, which then loads a macro. From then on the macro is simply invoked to execute the template
e.g. 'uif_text'
void setTemplateName(String templateName)
templateName
- String getTitle()
Depending on the component can be used in various ways. For example with a Container component the title is used to set the header text. For components like controls other other components that render an HTML element it is used to set the HTML title attribute.
List<Component> getPropertyReplacerComponents()
PropertyReplacer
in component
Used to get all the nested components in the property replacers.
PropertyReplacer
child componentsList<ComponentModifier> getComponentModifiers()
ComponentModifier
instances that should be invoked to
initialize the component
These provide dynamic initialization behavior for the component and are configured through the components definition. Each initializer will get invoked by the initialize method.
RunComponentModifiersTask
void setComponentModifiers(List<ComponentModifier> componentModifiers)
ComponentModifier
instancescomponentModifiers
- boolean isRetrieveViaAjax()
This flag does not imply any automation, there must be a js call invoked for the content to be retrieved by the server, but this does mark it with a placeholder component which KRAD js uses during these calls. This placeholder component is used for ajax retrievals. In particular, this flag is useful for use in combination with the showLightboxComponent js function which will automatically retrieve the real content of a component through ajax if a placeholder component is detected. This allows for the full content to only be retrieved when the lightbox is first opened. When this flag is set to true, the forceSessionPersistence flag is set to true AUTOMATICALLY because it is implied that this component will be retrieved by an ajax call in the future. This may also be useful for direct custom calls to retrieveComponent function, as well, which also relies on the placeholder being present.
void setRetrieveViaAjax(boolean useAjaxCallForContent)
useAjaxCallForContent
- boolean isHidden()
How the hidden data is maintained depends on the views persistence mode. If the mode is request, the corresponding data will be rendered to the UI but not visible. If the mode is session, the data will not be rendered to the UI but maintained server side.
For a Container
component, the hidden setting will apply to
all contained components (making a section hidden makes all fields within
the section hidden)
void setHidden(boolean hidden)
hidden
- Boolean getReadOnly()
When readOnly the controls and widgets of Field
components
will not be rendered. If the Field has an underlying value it will be
displayed readOnly to the user.
For a Container
component, the readOnly setting will apply
to all contained components (making a section readOnly makes all fields
within the section readOnly).
void setReadOnly(Boolean readOnly)
readOnly
- Boolean getCanCopyOnReadOnly()
By default this property is false. ReadOnly components are cleared on a copy operation. If set this prevents the component from being cleared.
void setCanCopyOnReadOnly(Boolean canCopyOnReadOnly)
canCopyOnReadOnly
- Boolean getRequired()
At the general component level required means there is some action the user needs to take within the component. For example, within a section it might mean the fields within the section should be completed. At a field level, it means the field should be completed. This provides the ability for the renderers to indicate the required action.
void setRequired(Boolean required)
required
- String getAlign()
All components belong to a Container
and are placed using a
LayoutManager
. This property specifies how the component
should be aligned horizontally within the container. During the finalize
phase the CSS text-align style will be created for the align setting.
CssConstants.TextAligns
String getValign()
All components belong to a Container
and are placed using a
LayoutManager
. This property specifies how the component
should be aligned vertically within the container. During the finalize
phase the CSS vertical-align style will be created for the valign
setting.
CssConstants.VerticalAligns
void setValign(String valign)
valign
- String getWidth()
All components belong to a Container
and are placed using a
LayoutManager
. This property specifies a width the component
should take up in the Container. This is not applicable for all layout
managers. During the finalize phase the CSS width style will be created
for the width setting.
e.g. '30%', '55px'
String getStyle()
Any style override or additions can be specified with this attribute. This is used by the renderer to set the style attribute on the corresponding element.
e.g. 'color: #000000;text-decoration: underline;'
List<String> getLibraryCssClasses()
void setLibraryCssClasses(List<String> libraryCssClasses)
List<String> getCssClasses()
Declares style classes for the component. Multiple classes are specified with a space delimiter. This is used by the renderer to set the class attribute on the corresponding element. The class(s) declared must be available in the common style sheets or the style sheets specified for the view
void setCssClasses(List<String> styleClasses)
styleClasses
- List<String> getAdditionalCssClasses()
void setAdditionalCssClasses(List<String> styleClasses)
styleClasses
- void addStyleClass(String styleClass)
styleClass
- void appendToStyle(String itemStyle)
itemStyle
- int getColSpan()
All components belong to a Container
and are placed using a
LayoutManager
. This property specifies how many places
horizontally the component should take up within the container. This is
only applicable for table based layout managers. Default is 1
void setColSpan(int colSpan)
colSpan
- int getRowSpan()
All components belong to a Container
and are placed using a
LayoutManager
. This property specifies how many places
vertically the component should take up within the container. This is
only applicable for table based layout managers. Default is 1
void setRowSpan(int rowSpan)
rowSpan
- List<String> getWrapperCssClasses()
void setWrapperCssClasses(List<String> cellCssClasses)
cellCssClasses
- void addWrapperCssClass(String cssClass)
cssClass
- the name of the class to addString getWrapperStyle()
e.g. 'align: right;'
void setWrapperStyle(String cellStyle)
cellStyle
- String getCellWidth()
void setCellWidth(String cellWidth)
cellWidth
- CssGridSizes getCssGridSizes()
This object is NOT used by other layouts. For specifics of how css grids work, refer to the krad guide and bootstrap css grid documentation.
void setCssGridSizes(CssGridSizes cssGridSizes)
getCssGridSizes()
Map<String,Object> getContext()
Any el statements configured for the components properties (e.g.
title="@{foo.property}") are evaluated using the el context map. This map
will get populated with default objects like the model, view, and request
from the ViewHelperService
. Other components can push
further objects into the context so that they are available for use with
that component. For example, Field
instances that are part
of a collection line as receive the current line instance
Context map also provides objects to methods that are invoked for
GeneratedField
instances
The Map key gives the name of the variable that can be used within expressions, and the Map value gives the object instance for which expressions containing the variable should evaluate against
NOTE: Calling getContext().putAll() will skip updating any configured property replacers for the component. Instead you should call #pushAllToContextDeep
getContext
in interface LifecycleElement
void setContext(Map<String,Object> context)
setContext
in interface LifecycleElement
context
- LifecycleElement.getContext()
List<PropertyReplacer> getPropertyReplacers()
PropertyReplacer
instances
They will be evaluated
during the view lifecycle to conditionally set properties on the
Component
based on expression evaluations
void setPropertyReplacers(List<PropertyReplacer> propertyReplacers)
propertyReplacers
- Map<String,String> getTemplateOptions()
The Map key is the option name, with the Map value as the option value. See documentation on the particular widget render for available options.
void setTemplateOptions(Map<String,String> templateOptions)
templateOptions
- String getTemplateOptionsJSString()
Map
of template options that will export that options as a
JavaScript Map for use in js and jQuery plugins
See documentation on the particular component render for available options.
void setTemplateOptionsJSString(String templateOptionsJSString)
templateOptionsJSString
- int getOrder()
Lower numbers are placed higher up in the list, while higher numbers are placed lower in the list
getOrder
in interface org.springframework.core.Ordered
Ordered.getOrder()
void setOrder(int order)
order
- Ordered.getOrder()
Tooltip getToolTip()
void setToolTip(Tooltip toolTip)
toolTip
- String getEventHandlerScript()
String getFinalizeMethodToCall()
Note the method can also be set with the finalizeMethodInvoker
targetMethod property. If the method is on the configured
ViewHelperService
, only this property needs to be configured
The model backing the view will be passed as the first argument method and then
the Component
instance as the second argument. If any additional method
arguments are declared with the finalizeMethodAdditionalArguments, they will then
be passed in the order declared in the list
If the component is selfRendered, the finalize method can return a string which will be set as the component's renderOutput. The selfRendered indicator will also be set to true on the component.
List<Object> getFinalizeMethodAdditionalArguments()
These arguments are passed to the finalize method after the standard model and component arguments. They are passed in the order declared in the list
MethodInvokerConfig getFinalizeMethodInvoker()
MethodInvokerConfig
instance for the method that should be invoked
for finalizing the component configuration
MethodInvoker can be configured to specify the class or object the method should be called on. For static method invocations, the targetClass property can be configured. For object invocations, that targetObject property can be configured
If the component is selfRendered, the finalize method can return a string which will be set as the component's renderOutput. The selfRendered indicator will also be set to true on the component.
boolean isSelfRendered()
If self rendered is true, the corresponding template for the component will not be invoked and the renderOutput String will be written to the response as is.
void setSelfRendered(boolean selfRendered)
selfRendered
- String getRenderedHtmlOutput()
void setRenderedHtmlOutput(String renderOutput)
renderOutput
- boolean isDisableSessionPersistence()
When the framework determines there is a condition on the component that requires it to keep around between posts, it will store the component instance in session. This flag can be set to disable this behavior (which would require custom application logic to support behavior such as refresh)
void setDisableSessionPersistence(boolean disableSessionPersistence)
disableSessionPersistence
- boolean isForceSessionPersistence()
By default the framework nulls out any components that do not have a refresh condition or are needed for collection processing. This can be a problem if custom application code is written to refresh a component without setting the corresponding component flag. In this case this property can be set to true to force the framework to keep the component in session. Defaults to false
void setForceSessionPersistence(boolean persistInSession)
persistInSession
- ComponentSecurity getComponentSecurity()
void setComponentSecurity(ComponentSecurity componentSecurity)
componentSecurity
- String getProgressiveRender()
void setProgressiveRender(String progressiveRender)
progressiveRender
- the progressiveRender to setString getConditionalRefresh()
void setConditionalRefresh(String conditionalRefresh)
conditionalRefresh
- the conditionalRefresh to setList<String> getProgressiveDisclosureControlNames()
getProgressiveRender()
String getProgressiveDisclosureConditionJs()
getConditionalRefresh()
The script can be executed on the client to determine if the original exp was satisfied before interacting with the server.
String getConditionalRefreshConditionJs()
getProgressiveRender()
The script can be executed on the client to determine if the original exp was satisfied before interacting with the server.
List<String> getConditionalRefreshControlNames()
getConditionalRefresh()
boolean isProgressiveRenderViaAJAX()
The component will not be rendered hidden after first retrieval if this flag is set to true. The component will then be fetched via an ajax call when it should be rendered.
void setProgressiveRenderViaAJAX(boolean progressiveRenderViaAJAX)
progressiveRenderViaAJAX
- the progressiveRenderViaAJAX to setboolean isProgressiveRenderAndRefresh()
If true, when the progressiveRender condition is satisfied, the component will always be retrieved from the server and shown(as opposed to being stored on the client, but hidden, after the first retrieval as is the case with the progressiveRenderViaAJAX option). By default, this is false, so components with progressive render capabilities will always be already within the client html and toggled to be hidden or visible.
void setProgressiveRenderAndRefresh(boolean progressiveRenderAndRefresh)
progressiveRenderAndRefresh
- the progressiveRenderAndRefresh to setList<String> getRefreshWhenChangedPropertyNames()
This can be a comma
separated list of multiple properties that require this component to be
refreshed when any of them change.
DO NOT use with progressiveRender
unless it is know that progressiveRender condition will always be
satisfied before one of these fields can be changed.
void setRefreshWhenChangedPropertyNames(List<String> refreshWhenChangedPropertyNames)
refreshWhenChangedPropertyNames
- List<String> getAdditionalComponentsToRefresh()
This will be a comma separated list of componentIds that need to be refreshed when a refresh condition has been set on this component.
void setAdditionalComponentsToRefresh(List<String> additionalComponentsToRefresh)
additionalComponentsToRefresh
- String getAdditionalComponentsToRefreshJs()
boolean isRefreshedByAction()
This is set by the framework for configured ajax action buttons, should not be set in configuration
void setRefreshedByAction(boolean refreshedByAction)
This is set by the framework for configured ajax action buttons, should not be set in configuration
refreshedByAction
- boolean isDisclosedByAction()
void setDisclosedByAction(boolean disclosedByAction)
disclosedByAction
- boolean isResetDataOnRefresh()
void setResetDataOnRefresh(boolean resetDataOnRefresh)
resetDataOnRefresh
- int getRefreshTimer()
void setRefreshTimer(int refreshTimer)
refreshTimer
- Map<String,String> getDataAttributes()
They can be access through .data() call in jQuery.
void setDataAttributes(Map<String,String> dataAttributes)
dataAttributes
- void setScriptDataAttributes(Map<String,String> dataAttributes)
dataAttributes
- Map<String,String> getScriptDataAttributes()
They can be accessed through .data() call in jQuery.
void addDataAttribute(String key, String value)
key
- value
- void addScriptDataAttribute(String key, String value)
key
- value
- String getSimpleDataAttributes()
String getScriptDataAttributesJs()
String getRole()
Map<String,String> getAriaAttributes()
void setAriaAttributes(Map<String,String> ariaAttributes)
getAriaAttributes()
void addAriaAttribute(String key, String value)
key
- the attribute (no "aria-" prefix)value
- the attribute's valueString getAriaAttributesAsString()
void completeValidation(ValidationTrace tracer)
tracer
- Record of component's locationString getPreRenderContent()
void setPreRenderContent(String preRenderContent)
preRenderContent
- String getPostRenderContent()
void setPostRenderContent(String postRenderContent)
postRenderContent
- String getMethodToCallOnRefresh()
List<String> getFieldsToSendOnRefresh()
The names in the list should be the propertyNames of the fields sent with this request. A wildcard("*") can be used at the END of a name to specify all fields with names that begin with the string before the wildcard. If the array contains 1 item with the keyword "NONE", then no form fields are sent. In addition, a group id or field id with the "#" id selector prefix can be used to send all input data which are nested within them. Note that this only limits the fields which exist on the form and data required by the KRAD framework is still sent (eg, methodToCall, formKey, sessionId, etc.)
void setFieldsToSendOnRefresh(List<String> fieldsToSendOnRefresh)
getFieldsToSendOnRefresh()
String getStyleClassesAsString()
String getExcludeIf()
If prefixed with the '#' character, this path will be relative to the view's "pre-model" context rather than the model.
This property is superseded by getExcludeUnless()
; when both resolve to true, the
component will be included. When neither property is set, the component is unconditionally
included.
ViewLifecycleUtils.isExcluded(Component)
String getExcludeUnless()
If prefixed with the '#' character, this path will be relative to the view's "pre-model" context rather than the model.
This property supersedes getExcludeIf()
; when both resolve to true, the component
will be included. When neither property is set, the component is unconditionally included.
ViewLifecycleUtils.isExcluded(Component)
boolean isOmitFromFormPost()
Action.fieldsToSend
property.void setOmitFromFormPost(boolean omitFromFormPost)
isOmitFromFormPost()
Copyright © 2005–2016 The Kuali Foundation. All rights reserved.