Actions
Overview
Common part
Reference
AbstractActionContextAware
AbstractActionContextAware
- Full name :
org.jspresso.framework.application.action.AbstractActionContextAware
- Sub-types :
AbstractAction
,AbstractActionMonitoringPlugin
,AbstractLovResultViewDescriptorFactory
,AbstractLovViewDescriptorFactory
,ConnectorValueGetterCallback
,DefaultCriteriaFactory
,FileToByteArrayCallback
Abstract class for all objects that need to manipulate an action context. It contains helper methods that takes the developer away from the standard context internal knowledge. Action developers can (should) use these helper methods (for reference manual readers, give an eye to the linked javadoc).
Property | Description |
---|---|
This class does not have any specific property. |
AbstractAction
- Full name :
org.jspresso.framework.application.action.AbstractAction
- Super-type :
AbstractActionContextAware
- Sub-types :
BackendAction
,FrontendAction
This is the base class for all application actions. It establishes the foundation of the Jspresso action framework, i.e. each action can link :
- a wrapped action that will execute a return back to the caller action
- a next action that will execute after the caller
- frontend actions that deal with user interaction. They are typically used to bootstrap a service request from th UI, update the UI state, trigger the display of information, errors, ...
- backend actions that are faceless, UI agnostic and deal with the manipulation of the domain model, backend services, ...
That's the main reason for having a wrapped and a next action in the action chain. The wrapped action is perfectly suited to call the backend layer (a backend action) and give the flow back to the frontend layer. The next action is perfectly suited to chain 2 actions of the same type (i.e. 2 frontend actions or 2 backend actions). Using this scheme helps keeping layer dependencies clear. Of course, this dual chaining mechanism is completely recursive thus allowing to compose small (generic) actions into larger composite ones and promoting reuse.
Actions execute on a context (an arbitrary map of objects keyed by "well-known" character strings) that is initialized by the controller when the action is triggered. The context passes along the action chain and is thus the perfect medium for actions to loosely communicate between each other. There are some framework standard elements placed in the action context that depend on the application state, but nothing prevents action developers to synchronize on arbitrary custom context elements that would be produced/consumed to/from the context.
Regarding framework-standard context elements, an action developer can
(should) leverage the utility methods declared in the
AbstractActionContextAware
super class instead of relying on the
element keys in the map. Take a look to the
AbstractActionContextAware
documentation to get your hands on
action context exploration.
Last but not least, you should be aware that actions should be coded with thread-safety in mind. Actual action instances are generally singleton-like (unless explicitly stated which is extremely rare) and thus, might be used by multiple sessions (threads) at once. You should never use action class attributes for argument passing along the action chain, but use the thread-owned action execution context instead. The action context is a data structure that is local to an action chain execution thus not shared across threads (users). It is the perfect place for exchanging data between actions. Of course, different instances of the same action can be used and configured differently through their class attributes (refer to it as static configuration), but this is all for using in different places in the application.
Property | Description |
---|---|
grantedRoles
|
Assigns the roles that are authorized to execute this action. It supports
"!" prefix to negate the role(s). This will directly
influence the UI behaviour since unauthorized actions won't be displayed.
Setting the collection of granted roles to |
nextAction
|
Registers an action to be executed after this action and after the wrapped one. This is perfectly suited to chain an action of the same type (frontend or backend) as this one. |
permId
|
Sets the permanent identifier to this application element. Permanent identifiers are used by different framework parts, like dynamic security or record/replay controllers to uniquely identify an application element. Permanent identifiers are generated by the SJS build based on the element id but must be explicitly set if Spring XML is used. |
wrappedAction
|
Registers an action to be executed after this action but before the next one. This is perfectly suited to chain a backend action from a frontend action since the control flow will return back to the calling layer (the frontend). |
AbstractActionMonitoringPlugin
- Full name :
org.jspresso.framework.application.action.AbstractActionMonitoringPlugin
- Super-type :
AbstractActionContextAware
- Sub-types :
LoggingActionMonitoringPlugin
Base class of action monitoring plugins. It mainly stores the action call stack in the chain as well as start timestamp and duration.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractLovResultViewDescriptorFactory
- Full name :
org.jspresso.framework.application.frontend.action.lov.AbstractLovResultViewDescriptorFactory
- Super-type :
AbstractActionContextAware
- Sub-types :
BasicLovResultViewDescriptorFactory
,MobileLovResultViewDescriptorFactory
The base abstract implementation for lov result view factories.
Property | Description |
---|---|
queryComponentDescriptorFactory
|
Sets the queryComponentDescriptorFactory. |
AbstractLovViewDescriptorFactory
- Full name :
org.jspresso.framework.application.frontend.action.lov.AbstractLovViewDescriptorFactory
- Super-type :
AbstractActionContextAware
- Sub-types :
BasicLovViewDescriptorFactory
,MobileLovViewDescriptorFactory
The base abstract implementation for lov view factories.
Property | Description |
---|---|
queryComponentDescriptorFactory
|
Sets the queryComponentDescriptorFactory. |
queryViewDescriptorFactory
|
Sets the queryViewDescriptorFactory. |
resultViewDescriptorFactory
|
Sets the resultViewDescriptorFactory. |
ConnectorValueGetterCallback
- Full name :
org.jspresso.framework.application.frontend.file.ConnectorValueGetterCallback
- Super-type :
AbstractActionContextAware
Default handler implementation to deal with getting binary properties storing them in files.
Property | Description |
---|---|
modelPath
|
Sets model path. |
DefaultCriteriaFactory
- Full name :
org.jspresso.framework.model.persistence.hibernate.criterion.DefaultCriteriaFactory
- Super-type :
AbstractActionContextAware
Default implementation of a criteria factory.
Property | Description |
---|---|
triStateBooleanSupported
|
Configures the criteria factory whether to consider use 3-states booleans, i.e. true, false or undefined. If
triStateBooleanSupported is set to false, then a |
useAliasesForJoins
|
Sets use aliases for joins. |
FileToByteArrayCallback
- Full name :
org.jspresso.framework.application.frontend.file.FileToByteArrayCallback
- Super-type :
AbstractActionContextAware
- Sub-types :
ActionExecutorCallback
,ConnectorValueSetterCallback
Default handler implementation to fully read the file input stream into a byte array and setting it in the context.
Property | Description |
---|---|
This class does not have any specific property. |
ActionMap
ActionMap
- Full name :
org.jspresso.framework.view.action.ActionMap
An action map is used to structure a set of actions. The actions are not directly registered but are placed into action lists that in turn are assigned to the action map. Action maps can be merged together, i.e. an action map can have multiple parent action maps. In that case, Action lists that have the same name are merged together. The way action maps are rendered depends on the place where they are declared. For instance an action map that is assigned to a view might be rendered as a toolbar with each action list separated into its own group. On the other hand, an action map declared on the frontend controller might be represented as a menu bar on the main application frame.
Property | Description |
---|---|
actionLists
|
Assigns the action lists that are directly owned by this action map. The action lists that will actually be rendered will be the merge of the directly owned action lists and of the parent action maps. Action lists that have the same name are merged together and into a merged action list, local actions will replace parent actions with the same name. |
grantedRoles
|
Assigns the roles that are authorized to use this action map. It supports
"!" prefix to negate the role(s). Whenever the user is not
granted sufficient privileges, the action map is simply not displayed at
runtime. Setting the collection of granted roles to |
hideActionWhenDisabled
|
Sets hidden when disabled. |
parentActionMaps
|
Assigns the parent action maps. The action lists that will actually be rendered will be the merge of the directly owned action lists and of the parent action maps. Action lists that have the same name are merged together and into a merged action list, local actions will replace parent actions with the same name. |
permId
|
Sets the permanent identifier to this application element. Permanent identifiers are used by different framework parts, like dynamic security or record/replay controllers to uniquely identify an application element. Permanent identifiers are generated by the SJS build based on the element id but must be explicitly set if Spring XML is used. |
renderingOptions
|
Indicates how the actions should be rendered. This is either a value of the
Default value is |
ActionList
ActionList
- Full name :
org.jspresso.framework.view.action.ActionList
- Super-type :
DefaultIconDescriptor
An action list is collection of actions tha can be described with a name, a description and an icon. Whether these information are visually leveraged depends on the place where the action list is used. For instance, an action list used to create a menu in a menu bar will be able to leverage its name and icon for menu representation. If it is used to define a toolbar part, none of them will be leveraged. The name of the action list is also used to identify the sibling action lists to be merged when inheriting action map together.
Property | Description |
---|---|
actions
|
Assigns the list of actions owned by this action list. |
collapsable
|
Configures the action list so that it can be collapsed by view factories. Collapsable action lists can typically be rendered as combo buttons in UI channels that support it.
Default value is |
grantedRoles
|
Assigns the roles that are authorized to use this action list. It supports
"!" prefix to negate the role(s). Whenever the user is not
granted sufficient privileges, the action list is simply not displayed at
runtime. Setting the collection of granted roles to |
hideActionWhenDisabled
|
Sets hidden when disabled. |
permId
|
Sets the permanent identifier to this application element. Permanent identifiers are used by different framework parts, like dynamic security or record/replay controllers to uniquely identify an application element. Permanent identifiers are generated by the SJS build based on the element id but must be explicitly set if Spring XML is used. |
renderingOptions
|
Indicates how the actions should be rendered. This is either a value of the
Default value is |
Backend actions
Reference
BackendAction
BackendAction
- Full name :
org.jspresso.framework.application.backend.action.BackendAction
- Super-type :
AbstractAction
- Sub-types :
AbstractCloneAction
,AbstractCollectionAction
,AbstractLdapAction
,AbstractPasswordAction
,AbstractQbeAction
,AbstractQueryComponentsAction
,AddBeanAsSubModuleAction
,CreateQueryComponentAction
,DeleteEntityAction
,GenerateJasperReportAction
,InitModuleFilterAction
,PurgeCompletedAsynExecutorsAction
,ReloadAction
,RemoveFromModuleObjectsAction
,ResetConnectorValueAction
,SaveAction
,ScriptedBackendAction
,SelectEntityPropertyAction
,TransferCollectionAction
This class should serve as base class for implementing actions that execute on the backend (domain model) of the application. It provides accessors on the context elements that are generally used through the action execution process.
Property | Description |
---|---|
badFrontendAccessChecked
|
Sets the badFrontendAccessChecked. |
AbstractCloneAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractCloneAction
- Super-type :
BackendAction
- Sub-types :
CloneComponentAction
An action used duplicate a domain object. the cloned domain object is set as model for the current view.
protected abstract Object cloneElement(Object element, Map<String, Object> context)
Property | Description |
---|---|
This class does not have any specific property. |
CloneComponentAction
- Full name :
org.jspresso.framework.application.backend.action.CloneComponentAction
- Super-type :
AbstractCloneAction
An action used duplicate an entity or a component. This action
is parametrized with a clone factory (IEntityCloneFactory
) to
perform the actual component cloning. Executing this action will result in
setting the cloned component to the underlying view.
Property | Description |
---|---|
entityCloneFactory
|
Configures the entity clone factory to use to clone the components or entities. |
AbstractCollectionAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractCollectionAction
- Super-type :
BackendAction
- Sub-types :
AbstractAddCollectionToMasterAction
,CollectionElementMoveAction
,RemoveCollectionFromMasterAction
,RemoveCollectionFromMasterAction
,RemoveFromModuleObjectsAction
,RemoveModuleObjectAction
,SetActionParamFromSelectedComponentsAction
Base class for backend actions acting on collection models. This class is just used to refine certain protected methods return types.
Property | Description |
---|---|
viewPath
|
Sets view path. |
AbstractAddCollectionToMasterAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractAddCollectionToMasterAction
- Super-type :
AbstractCollectionAction
- Sub-types :
AbstractCloneCollectionAction
,AddAnyCollectionToMasterAction
,AddComponentCollectionToMasterAction
,AddMapToMasterAction
,PasteCollectionToMasterAction
An action used in master/detail views to create and add a new detail to a master domain object. The only method to be implemented by concrete subclasses to retrieve the instances to be added to the master is :
protected abstract List<?> getAddedComponents(Map<String, Object> context)
Property | Description |
---|---|
ignoreSelection
|
Sets ignore selection. |
initializationMapping
|
Sets initialization mapping. |
AbstractCloneCollectionAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractCloneCollectionAction
- Super-type :
AbstractAddCollectionToMasterAction
- Sub-types :
CloneComponentCollectionAction
An action used duplicate a collection of domain objects. Cloning an entity should result in adding it to the collection the action was triggered on. Components to clone are retrieved from the context using the selected indices of the model collection connector. Actual cloning of components is left to concrete implementations that must implement :
protected abstract Object cloneElement(Object element, Map<String, Object> context)
Property | Description |
---|---|
This class does not have any specific property. |
CloneComponentCollectionAction
- Full name :
org.jspresso.framework.application.backend.action.CloneComponentCollectionAction
- Super-type :
AbstractCloneCollectionAction
An action used duplicate a collection of entities or components. This action
is parametrized with a clone factory (IEntityCloneFactory
) to
perform the actual component cloning. Executing this action will result in
adding the cloned component(s) to the underlying model collection.
Property | Description |
---|---|
entityCloneFactory
|
Configures the entity clone factory to use to clone the components or entities. |
AddAnyCollectionToMasterAction
- Full name :
org.jspresso.framework.application.backend.action.AddAnyCollectionToMasterAction
- Super-type :
AbstractAddCollectionToMasterAction
An action used in master/detail views to add new detail(s) to a master domain
object. The details to add are taken from the action context through the
ActionParameter
context value.
Property | Description |
---|---|
This class does not have any specific property. |
AddComponentCollectionToMasterAction
- Full name :
org.jspresso.framework.application.backend.action.AddComponentCollectionToMasterAction
- Super-type :
AbstractAddCollectionToMasterAction
An action used in master/detail views to create and add a new detail to a master domain object. Entity (or component) to add are actually created by the entity factory retrieved from the action context. The class of entity (component) to create is either taken :
- from the action context under the key
ELEMENT_DESCRIPTOR
- or, if it does not exist, taken from the view model descriptor. In this case, the component descriptor to use is the element descriptor of the underlying collection descriptor.
Property | Description |
---|---|
This class does not have any specific property. |
AddMapToMasterAction
- Full name :
org.jspresso.framework.application.backend.action.AddMapToMasterAction
- Super-type :
AbstractAddCollectionToMasterAction
- Sub-types :
CloneMapCollectionAction
An action used in master/detail views where models are backed by maps to
create and add a new detail to a master domain object. The new instance
created is an instance of
org.jspresso.framework.util.collection.ObjectEqualityMap
.
Default property values as well as onCreate
lifecycle
interceptors registered on the component descriptor are supported.
Property | Description |
---|---|
This class does not have any specific property. |
CloneMapCollectionAction
- Full name :
org.jspresso.framework.application.backend.action.CloneMapCollectionAction
- Super-type :
AddMapToMasterAction
An action used duplicate a collection of domain objects implemented as maps.
Newly created maps are instances of
org.jspresso.framework.util.collection.ObjectEqualityMap
that
contains the same key/value pairs as the maps to clone. Executing this action
will result in adding the cloned map to the underlying model collection.
Property | Description |
---|---|
This class does not have any specific property. |
PasteCollectionToMasterAction
- Full name :
org.jspresso.framework.application.backend.action.PasteCollectionToMasterAction
- Super-type :
AbstractAddCollectionToMasterAction
An action used in master/detail views to paste previously copied or cut detail(s) to a master domain object. The application clipboard is used to retrieve the entities (or components) to paste. Whenever the components have been previously copied to the clipboard, the paste action will clone them when executed using the configured entity clone factory. Whenever the components have been previously cut, the paste action will simply use the exact same instances as the one placed on the clipboard.
Property | Description |
---|---|
entityCloneFactory
|
Configures the entity clone factory to use when the paste action is triggered after a copy. |
CollectionElementMoveAction
- Full name :
org.jspresso.framework.application.backend.action.CollectionElementMoveAction
- Super-type :
AbstractCollectionAction
This action can be declared on views that are backed by collections with list semantics (indexed collections). It allows to take a the selected elements and move them in the collection using a configured offset. It allows for re-ordering the list.
Property | Description |
---|---|
offset
|
Configures the offset to use when moving the selected elements inside the list. A configured offset of 1 will increase (move down) by one the selected elements indices whereas an offset of -1 will decrease (move up) the selected elements indices. |
toBottom
|
Configures this action to move the selected elements to the bottom of the list. |
toTop
|
Configures this action to move the selected elements to the top of the list. |
RemoveCollectionFromMasterAction
- Full name :
org.jspresso.framework.application.backend.action.RemoveCollectionFromMasterAction
- Super-type :
AbstractCollectionAction
An action used in master/detail views to remove selected details from a master domain object. No further operation (like actual removal from a persistent store) is performed by this action.
Property | Description |
---|---|
This class does not have any specific property. |
RemoveCollectionFromMasterAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.RemoveCollectionFromMasterAction
- Super-type :
AbstractCollectionAction
An action used in master/detail views to remove selected details from a master domain object. More than just removing the selected details from their owning collection, this action "cuts" the existing links between the entities to remove and the rest of the domain then registers them for deletion on next save operation.
Note that cleaning of relationships is a 2 pass process. The 1st one is a dry run that checks that no functional exception is thrown by the business rules. The second one performs the actual cleaning.
Property | Description |
---|---|
This class does not have any specific property. |
RemoveFromModuleObjectsAction
- Full name :
org.jspresso.framework.application.backend.action.module.RemoveFromModuleObjectsAction
- Super-type :
AbstractCollectionAction
This action, which is to be used on bean collection modules, removes the selected objects from the module's projected collection. If one (or more) of the removed objects are also used in children bean modules, the corresponding children bean modules are also removed accordingly.
Property | Description |
---|---|
This class does not have any specific property. |
RemoveModuleObjectAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.module.RemoveModuleObjectAction
- Super-type :
AbstractCollectionAction
This action, which is to be used on bean modules, deletes the module object from the persistent store. The bean module is also removed from it's parent accordingly.
Property | Description |
---|---|
This class does not have any specific property. |
SetActionParamFromSelectedComponentsAction
- Full name :
org.jspresso.framework.application.backend.action.SetActionParamFromSelectedComponentsAction
- Super-type :
AbstractCollectionAction
A trivial backend action that updates the action context by setting the
ActionParameter
with the selected components of the underlying
model.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractLdapAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractLdapAction
- Super-type :
BackendAction
Root abstract class of actions that deal with LDAP directory. It's only
purpose is to standardize the use of Spring LdapTemplate
.
Property | Description |
---|---|
ldapTemplate
|
Configures the Spring LDAP template to use with this action. |
AbstractPasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.AbstractPasswordAction
- Super-type :
BackendAction
- Sub-types :
AbstractChangePasswordAction
,AbstractResetPasswordAction
Abstract pasword class with base methods for encofding and hashing passwords.
Property | Description |
---|---|
digestAlgorithm
|
Sets the digestAlgorithm to use to hash the password before storing it (MD5 for instance). |
hashEncoding
|
Sets the hashEncoding to encode the password hash before storing it. You may choose between :
BASE64 . |
AbstractChangePasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.AbstractChangePasswordAction
- Super-type :
AbstractPasswordAction
- Sub-types :
DatabaseChangePasswordAction
,LdapChangePasswordAction
,MockChangePasswordAction
This is the base class for implementing an action that performs actual modification of a logged-in user password. This implementation delegates to subclasses the actual change in the concrete JAAS store. This backend action expects a Map<String,Object> in as action parameter in the context. This map must contain :
password_current
entry containing current password. Entry key can be referred to as PASSWD_CURRENT static constant.password_typed
entry containing the new password. Entry key can be referred to as PASSWD_TYPED static constant.password_retyped
entry containing the new password retyped. Entry key can be referred to as PASSWD_RETYPED static constant.
current_password
must match the
logged-in user current password and password_typed
and
password_retyped
mut match between each other. The only method to
be implemented by concrete subclasses is :
protected abstract boolean changePassword(UserPrincipal userPrincipal, String currentPassword, String newPassword)
Property | Description |
---|---|
allowEmptyPasswords
|
Configures the possibility to choose an empty password.
Default value is |
allowLoginPasswords
|
Configures the possibility to choose a password that equals the login.
Default value is |
passwordRegex
|
Configures a regex that new passwords must match.
Default value is |
passwordRegexSample
|
Configures an example of a valid password to explain the regex rules. |
DatabaseChangePasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.DatabaseChangePasswordAction
- Super-type :
AbstractChangePasswordAction
Concrete backend implementation of a change password action where password is stored in a relational database.
Property | Description |
---|---|
jdbcTemplate
|
Configures the Spring jdbcTemplate to use to issue the update statement. |
updateQuery
|
Configures the update query to execute to change the password. The prepared statement parameters that will be bound are, in order :
|
LdapChangePasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.LdapChangePasswordAction
- Super-type :
AbstractChangePasswordAction
Concrete backend implementation of a change password action where password is stored in an LDAP directory. The user DN to use to connect to the LDAP directory is the one stored in the user principal from the login process.
Property | Description |
---|---|
ldapUrl
|
Configures the LDAP url (e.g. http://localhost:389) of the LDAP directory. The user must be authorized to change its own password in the LDAP backend. |
MockChangePasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.MockChangePasswordAction
- Super-type :
AbstractChangePasswordAction
Mocks up password change.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractResetPasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.AbstractResetPasswordAction
- Super-type :
AbstractPasswordAction
- Sub-types :
DatabaseResetPasswordAction
,MockResetPasswordAction
This is the base class for implementing an action that performs actual reset of a logged-in user password. This implementation delegates to subclasses the actual change in the concrete JAAS store. This backend action will generate a random String that will replace the user password in the store.
The only method to be implemented by concrete subclasses is :
protected abstract boolean resetPassword(String username, String newPassword)
Property | Description |
---|---|
This class does not have any specific property. |
DatabaseResetPasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.DatabaseResetPasswordAction
- Super-type :
AbstractResetPasswordAction
Concrete backend implementation of a reset password action where password is stored in a relational database.
Property | Description |
---|---|
jdbcTemplate
|
Configures the Spring jdbcTemplate to use to issue the update statement. |
updateQuery
|
Configures the update query to execute to change the password. The prepared statement parameters that will be bound are, in order :
|
MockResetPasswordAction
- Full name :
org.jspresso.framework.application.backend.action.security.MockResetPasswordAction
- Super-type :
AbstractResetPasswordAction
Mocks up password reset.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractQbeAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractQbeAction
- Super-type :
BackendAction
- Sub-types :
FindAction
,QueryModuleFilterAction
Abstract base class for QBE find actions.
Property | Description |
---|---|
queryAction
|
Configures the query action used to actually perform the entity query. |
sortOnly
|
Sets the sortOnly. |
FindAction
- Full name :
org.jspresso.framework.application.backend.action.FindAction
- Super-type :
AbstractQbeAction
This action will climb the model connector hierarchy to retrieve a query
component used as QBE filter. It will then tailor paging status on this query
component before continuing execution. This action is meant to be chained
with an actual backend action to perform the query (like
QueryEntitiesAction
).
Property | Description |
---|---|
This class does not have any specific property. |
QueryModuleFilterAction
- Full name :
org.jspresso.framework.application.backend.action.module.QueryModuleFilterAction
- Super-type :
AbstractQbeAction
Retrieves the filter of a module and queries the persistent store to populate
the module objects. The actual query is delegated to another backend action
(defaulted to QueryEntitiesAction
) that can be configured
through the queryAction
property.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractQueryComponentsAction
- Full name :
org.jspresso.framework.application.backend.action.AbstractQueryComponentsAction
- Super-type :
BackendAction
- Sub-types :
QueryEntitiesAction
,StaticQueryComponentsAction
This action is the base abstract class to query components by example. It is used behind
the scene in several places in Jspresso based applications, as in filtered
bean collection modules, list of values, ... The principles are to perform a search
based on the Jspresso "IQueryComponent
". A Jspresso query component is a hierarchical data structure that
mimics a portion of the domain model headed by an entity. It is essentially a
set of property/value pairs where values can be :
- a scalar value
- a comparable query structure (operator, inf and sup value) to place a constraint on a comparable property (date, number, ...)
- a sub query component
Whenever the query is successful, the result is merged back to the
application session and assigned to the query component
queriedComponents
property.
Note that there is 1 hook that can be configured by injection to fine-tune
the performed query : queryComponentRefiner
.
Property | Description |
---|---|
mergeMode
|
Sets the mergeMode to use when assigning the queried components to the
filter query component. A |
queryComponentRefiner
|
Configures a query component refiner that will be called before the query component is processed to extract the Hibernate detached criteria. This allows for instance to force query values. |
useCountForPagination
|
Sets use count for pagination. |
QueryEntitiesAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.hibernate.QueryEntitiesAction
- Super-type :
AbstractQueryComponentsAction
This action is used to Hibernate query entities by example. It is used behind
the scene in several places in Jspresso based applications, as in filtered
bean collection modules, list of values, ... The principles are to tailor an
Hibernate Criterion based on the Jspresso "IQueryComponent
". A Jspresso query component is a hierarchical data structure that
mimics a portion of the domain model headed by an entity. It is essentially a
set of property/value pairs where values can be :
- a scalar value
- a comparable query structure (operator, inf and sup value) to place a constraint on a comparable property (date, number, ...)
- a sub query component
Out of this query component, the action will build an Hibernate detached criteria by constructing all join sub-criteria whenever necessary.
Once the detached criteria is complete, the action will perform the Hibernate query while using paging information taken from the query component as well as custom sorting properties.
Whenever the query is successful, the result is merged back to the
application session and assigned to the query component
queriedComponents
property.
Note that there are 2 hooks that can be configured by injection to fine-tune
the performed query : queryComponentRefiner
and
criteriaRefiner
.
Property | Description |
---|---|
criteriaFactory
|
Sets the criteriaFactory. |
criteriaRefiner
|
Configures a criteria refiner that will be called before the Hibernate detached criteria is actually used to perform the query. It allows to complement the criteria with arbitrary complex clauses that cannot be simply expressed in a "Query by Example" semantics. |
useInListForPagination
|
Sets the useInListForPagination. |
StaticQueryComponentsAction
- Full name :
org.jspresso.framework.application.backend.action.StaticQueryComponentsAction
- Super-type :
AbstractQueryComponentsAction
This action filters an arbitrary component list against the query component using a query component matcher.
Property | Description |
---|---|
componentStore
|
Sets component store. |
AddBeanAsSubModuleAction
- Full name :
org.jspresso.framework.application.backend.action.module.AddBeanAsSubModuleAction
- Super-type :
BackendAction
This action can be installed on any collection view and will :
- take the selected elements in the underlying model collection,
- create bean modules out of them, using the
childModuleProjectedViewDescriptor
as projected view if it has been configured, - add the created bean modules as children of the currently selected module, visualizing them in the workspace navigation tree.
childModuleProjectedViewDescriptor
configured, and the currently selected module is a bean collection module,
the created modules projected view descriptor is taken from the bean
collection module (elementViewDescriptor
).
Property | Description |
---|---|
childModuleProjectedViewDescriptor
|
Sets the childModuleProjectedViewDescriptor. |
CreateQueryComponentAction
- Full name :
org.jspresso.framework.application.backend.action.CreateQueryComponentAction
- Super-type :
BackendAction
Creates a query component to be used in filters or list of values. The
created query component is stored in the context under the key
IQueryComponent.QUERY_COMPONENT
. Further explanations are given
about query components in the QueryEntitiesAction
documentation.
Property | Description |
---|---|
queryComponentDescriptorFactory
|
Sets the queryComponentDescriptorFactory. |
queryComponentRefiner
|
Sets the queryComponentRefiner. |
DeleteEntityAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.DeleteEntityAction
- Super-type :
BackendAction
An action used to delete the entity that is model of the view.
Note that cleaning of relationships is a 2 pass process. The 1st one is a dry run that checks that no functional exception is thrown by the business rules. The second one performs the actual cleaning.
Property | Description |
---|---|
This class does not have any specific property. |
GenerateJasperReportAction
- Full name :
org.jspresso.framework.application.printing.backend.action.GenerateJasperReportAction
- Super-type :
BackendAction
This action performs the actual Jasper report generation using a JDBC
data source. The report design is retrieved from the action context (under the
key IReport.REPORT_ACTION_PARAM
). The report context used during
the generation includes the action context so that all Jspresso managed
objects can be leveraged in the report itself. The logged-in user locale is
used as the report locale.
The resulting JasperPrint
report is then placed into the action
context as action parameter for further processing (like PDF production for
instance).
Property | Description |
---|---|
jdbcTemplate
|
Configures the JDBC template (wrapping a data source) to use for filling the report. |
InitModuleFilterAction
- Full name :
org.jspresso.framework.application.backend.action.module.InitModuleFilterAction
- Super-type :
BackendAction
Initialize a module filter with a brand new query component and resets the module objects collection.
Property | Description |
---|---|
createQueryComponentAction
|
Sets the createQueryComponentAction. |
queryComponentRefiner
|
Sets the queryComponentRefiner. |
PurgeCompletedAsynExecutorsAction
- Full name :
org.jspresso.framework.application.backend.action.PurgeCompletedAsynExecutorsAction
- Super-type :
BackendAction
Purges completed asynchronous action executors.
Property | Description |
---|---|
This class does not have any specific property. |
ReloadAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.ReloadAction
- Super-type :
BackendAction
- Sub-types :
ReloadModuleObjectAction
Reloads the entities provided by the context ActionParameter
.
The whole entities graphs are reloaded from the persistent store.
Property | Description |
---|---|
transactional
|
Sets transactional. |
ReloadModuleObjectAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.ReloadModuleObjectAction
- Super-type :
ReloadAction
Reloads all the module entities as well as all its sub-modules entities recursively. The whole entities graphs are reloaded from the persistent store.
Property | Description |
---|---|
This class does not have any specific property. |
RemoveFromModuleObjectsAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.module.RemoveFromModuleObjectsAction
- Super-type :
BackendAction
This action, which is to be used on bean collection modules, removes the selected objects from the module's projected collection and deletes them from the persistent store. If one (or more) of the removed objects are also used in children bean modules, the corresponding children bean modules are also removed accordingly. It is versatile enough to work on mobile collection module details.
Property | Description |
---|---|
This class does not have any specific property. |
ResetConnectorValueAction
- Full name :
org.jspresso.framework.application.backend.action.ResetConnectorValueAction
- Super-type :
BackendAction
Resets the model connector value to null.
Property | Description |
---|---|
modelPath
|
Sets model path. |
SaveAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.SaveAction
- Super-type :
BackendAction
- Sub-types :
SaveModuleObjectAction
Saves the entities provided by the context ActionParameter
. All
previously registered persistence operations are also performed.
Property | Description |
---|---|
This class does not have any specific property. |
SaveModuleObjectAction
- Full name :
org.jspresso.framework.application.backend.action.persistence.SaveModuleObjectAction
- Super-type :
SaveAction
Saves all the module entities as well as all its sub-modules entities recursively. All previously registered persistence operations are also performed.
Property | Description |
---|---|
This class does not have any specific property. |
ScriptedBackendAction
- Full name :
org.jspresso.framework.application.backend.action.ScriptedBackendAction
- Super-type :
BackendAction
- Sub-types :
StaticScriptedBackendAction
A scripted backend action. The action takes the script to execute (an
IScript
implementation) out of its context (using
ActionParameter
) and delegates the actual script execution to a
IScriptHandler
configured through the scriptHandler
property.
Property | Description |
---|---|
scriptHandler
|
Configures the script handler to use to perform the script execution. |
StaticScriptedBackendAction
- Full name :
org.jspresso.framework.application.backend.action.StaticScriptedBackendAction
- Super-type :
ScriptedBackendAction
A statically scripted backend action. The script and the scripting language are statically configured in the action itself.
Property | Description |
---|---|
script
|
Sets the script source code. |
scriptLanguage
|
Sets the script language this scripted action is written in. |
SelectEntityPropertyAction
- Full name :
org.jspresso.framework.application.backend.action.SelectEntityPropertyAction
- Super-type :
BackendAction
A generic action to fill-in the context ActionParameter
with the
value of an entity property.
Property | Description |
---|---|
property
|
Configures the property to extract out of the underlying model. |
TransferCollectionAction
- Full name :
org.jspresso.framework.application.backend.action.TransferCollectionAction
- Super-type :
BackendAction
An action used to register a collection of domain objects into the application's clipboard along with a transfer mode semantics.
Property | Description |
---|---|
transferMode
|
Configures the transferMode to use when pasting will be requested, i.e. :
|
Frontend actions
Reference
FrontendAction
FrontendAction
- Full name :
org.jspresso.framework.application.frontend.action.FrontendAction
- Super-type :
AbstractAction
- Sub-types :
AbstractChartAction
,AbstractEditComponentAction
,AbstractMessageAction
,AbstractModuleDirtyStateAction
,AbstractReportAction
,ActionParamToSelectedModelAction
,AddBeanAsSubModuleFrontAction
,AddCollectionToMasterAction
,AddPageAction
,BinaryPropertyInfoAction
,ChooseActionAction
,ChooseComponentAction
,CloseDialogAction
,CreateEntityFromLovPersistAction
,DisplayNextPinnedModuleAction
,DisplayPreviousPinnedModuleAction
,DisplayUrlAction
,EditSelectionAction
,ExecuteActionAction
,ExitAction
,ListApplicationElementsAction
,LoginAction
,LovAction
,ModalDialogAction
,ModuleRestartAction
,ModuleSelectionAction
,NavigateModuleObjectsAction
,OkChooseComponentAction
,OkLovAction
,PageOffsetAction
,ParentModuleConnectorSelectionAction
,PrintAction
,QueryFilterModuleAction
,RefreshCardViewFrontAction
,RefreshControllerDescriptionAction
,RemoveComponentsFromWorkspacesFrontAction
,ResetPasswordAction
,SaveModuleObjectFrontAction
,SelectedModelToActionParamAction
,SetConnectorValueAction
,TransferToClipboardAction
,EditSelectedComponentAction.UowRollbackerAction
,WizardAction
,WorkspaceSelectionAction
This is the base class for frontend actions. To get a better understanding of
how actions are organized in Jspresso, please refer to
AbstractAction
documentation.
This base class allows for visual (name, icon, toolTip) as well as accessibility (accelerator, mnemonic shortcuts) and actionability (using gates) parametrization.
A frontend action is to be executed by the frontend controller in the context of the UI. It can thus access the view structure, interact visually with the user, and so on. A frontend action can chain a backend action but the opposite will be prevented.
Property | Description |
---|---|
acceleratorAsString
|
Configures a keyboard accelerator shortcut on this action. Support of this
feature depends on the UI execution platform. The syntax used consists of
listing keys that should be pressed to trigger the action, i.e.
|
actionabilityGates
|
Assigns a collection of gates to determine action actionability. An action will be considered actionable (enabled) if and only if all gates are open. This mechanism is mainly used for dynamic UI authorization based on model state, e.g. a validated invoice should not be validated twice. Action assigned gates will be cloned for each concrete action instance created and bound to its respective UI component (usually a button). So basically, each action instance will have its own, unshared collection of actionability gates. Jspresso provides a useful set of gate types, like the binary property gate that open/close based on the value of a boolean property of the view model the action is installed to. By default, frontend actions are assigned a generic gate that closes (disables the action) when the view is not assigned any model. |
collectionBased
|
Declares the action as working on a collection of objects. Collection based actions will typically be installed on selectable views (table, list, tree) and will be enabled only when the view selection is not empty (a default gate is installed for this purpose). Moreover, model gates that are configured on collection based actions take their model from the view selected components instead of the view model itself. In case of multi-selection enabled UI views, the actionability gates will actually open if and only if their opening condition is met for all the selected items. |
description
|
Sets the key used to compute the internationalized description of the action. The translated description is then usually used as toolTip for the action. |
hiddenWhenDisabled
|
Sets hidden when disabled. |
icon
|
Sets the icon. |
iconImageURL
|
Sets the icon image URL used to decorate the action UI component peer. Supported URL protocols include :
|
iconPreferredHeight
|
Sets the icon preferred height. |
iconPreferredWidth
|
Sets the icon preferred width. |
mnemonicAsString
|
Configures the mnemonic key used for this action. Support of this feature depends on the UI execution platform. Mnemonics are typically used in menu and menu items. |
multiSelectionEnabled
|
Declares the action as being able to run on a collection containing more than 1 element. A multiSelectionEnabled = false action will be disabled when the selection contains no or more than one element. |
name
|
Sets the key used to compute the internationalized name of the action. The translated name is then usually used as label for the action (button label, menu label, ...). |
repeatPeriodMillis
|
Sets repeat period in milliseconds. Whenever this is set to a positive integer, the client UI controller should schedule an execution of this action periodically. |
styleName
|
Assigns the style name to use for this view. The way it is actually leveraged depends on the UI channel. It will generally be mapped to some sort of CSS style name.
Default value is |
AbstractChartAction
- Full name :
org.jspresso.framework.application.charting.frontend.action.AbstractChartAction
- Super-type :
FrontendAction
- Sub-types :
DisplayChartAction
This is the abstract base class for Fusioncharts (flash based charting library) display actions. It holds several common properties that are independent from the actual, concrete, implementations.
Property | Description |
---|---|
actions
|
Configures a list of actions to install in the chart modal dialog. |
chartDescriptor
|
This property describes the chart to compute and display. A chart descriptor is a simple data structure that provides :
|
jdbcTemplate
|
Configures the JDBC template to be used by the chart to compute its data. |
DisplayChartAction
- Full name :
org.jspresso.framework.application.charting.frontend.action.server.DisplayChartAction
- Super-type :
AbstractChartAction
This is the concrete implementation of the Fusionchart display action. This
action is specialized by UI channel, i.e. server based UI channels (Ajax,
Flex, ULC) will use server
.DisplayChartAction
whereas standalone UI channels (Swing) will
use standalone
.DisplayChartAction
.
Property | Description |
---|---|
This class does not have any specific property. |
AbstractEditComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.std.AbstractEditComponentAction
- Super-type :
FrontendAction
- Sub-types :
EditComponentAction
,EditSelectedComponentAction
This action serves as a base class for actions that pop-pup a dialog to edit a component.
Property | Description |
---|---|
complementaryActions
|
Installs a list of complementary actions to install between the ok and cancel actions. |
viewDescriptor
|
Configures the view descriptor to be used to create the component editing view that will be installed in the dialog. |
EditComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.std.EditComponentAction
- Super-type :
AbstractEditComponentAction
- Sub-types :
ChangePasswordAction
,CreateEntityFromLovAction
,EditBackendControllerAction
,EditFrontendControllerAction
,EditReportParametersAction
,MobileEditComponentAction
This action pulls a model out of the context (action parameter or selected
model if action parameter is not filled), creates a view, binds it on the
model and prepares for chaining with a modal dialog action to pop-up the
result. The translated name of the action, whenever not empty, will be used
as the dialog title. If the context extracted model is a collection, the
first element of the collection is used. Custom actions (
okAction
and cancelAction
) can be configured to
take care of user decision when closing the dialog.
Property | Description |
---|---|
cancelAction
|
Configures the action to be installed in the dialog when the user cancels the component edition. |
okAction
|
Configures the action to be installed in the dialog when the user confirms the component edition. |
ChangePasswordAction
- Full name :
org.jspresso.framework.application.frontend.action.security.ChangePasswordAction
- Super-type :
EditComponentAction
This is the frontend action to initiate the logged-in user password change. It will install a form view with a custom component designed to host :
- the current password
- the new password
- the confirmation for the new password
okAction
) with a concrete
subclass of backend AbstractChangePasswordAction
that performs
the actual password change depending on the authentication backend. Jspresso
offers two concrete implementations :
LdapChangePasswordAction
for LDAP based authentication backendDatabaseChangePasswordAction
for JDBC based authentication backend
Property | Description |
---|---|
This class does not have any specific property. |
CreateEntityFromLovAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.CreateEntityFromLovAction
- Super-type :
EditComponentAction
The type Create entity from lov action.
Property | Description |
---|---|
This class does not have any specific property. |
EditBackendControllerAction
- Full name :
org.jspresso.framework.application.frontend.action.controller.EditBackendControllerAction
- Super-type :
EditComponentAction
This is a frontend action to display a view backed by the session backend controller itself. It is used, for instance, to display the running asynchronous actions.
Property | Description |
---|---|
This class does not have any specific property. |
EditFrontendControllerAction
- Full name :
org.jspresso.framework.application.frontend.action.controller.EditFrontendControllerAction
- Super-type :
EditComponentAction
This is a frontend action to display a view backed by the session backend controller itself. It is used, for instance, to display the running asynchronous actions.
Property | Description |
---|---|
This class does not have any specific property. |
EditReportParametersAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.EditReportParametersAction
- Super-type :
EditComponentAction
This action takes a report (IReport
) from the context (
REPORT_ACTION_PARAM
key) and pops-up a form to allow for the
report input parameters customization.
Property | Description |
---|---|
This class does not have any specific property. |
MobileEditComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.std.mobile.MobileEditComponentAction
- Super-type :
EditComponentAction
This is the mobile version of the edit component action.
okAction
and cancelAction
) are added as page actions instead of dialog ones.
Property | Description |
---|---|
This class does not have any specific property. |
EditSelectedComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.std.EditSelectedComponentAction
- Super-type :
AbstractEditComponentAction
This action should be installed on collection views. It takes the selected component and edit it in a modal dialog. Editing happens in a "Unit of Work" meaning that it can be rolled-back when canceling.
Property | Description |
---|---|
cancelAction
|
Sets the cancelAction. |
okAction
|
Sets the okAction. |
AbstractMessageAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.AbstractMessageAction
- Super-type :
FrontendAction
- Sub-types :
InfoAction
,OkCancelAction
,YesNoAction
,YesNoCancelAction
This is the base class for all UI message based communication actions. This
type of action generally opens a modal dialog to display an informational
message, ask a question, and so on. It takes the message from the action
context parameter and supports basic HTML formatting. In order for the
message to be interpreted as HTML, it must be surrounded by
<HTML>
tags.
Property | Description |
---|---|
This class does not have any specific property. |
InfoAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.InfoAction
- Super-type :
AbstractMessageAction
- Sub-types :
StaticInfoAction
This action pops-up an informational message to the user.
Property | Description |
---|---|
This class does not have any specific property. |
StaticInfoAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.StaticInfoAction
- Super-type :
InfoAction
This action pops-up an informational message to the user. The message, instead of being extracted out of the context, is parametrized statically into the action through its internationalization key.
Property | Description |
---|---|
messageCode
|
Configures the i18n key used to translate the message that is to be displayed to the user. When the action executes, the statically configured message is first translated, then placed into the action context to be popped-up. |
OkCancelAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.OkCancelAction
- Super-type :
AbstractMessageAction
- Sub-types :
StaticOkCancelAction
This action pops-up an Ok - Cancel confirmation option. Depending on user answer, another action is triggered. The Ok - Cancel alternative actions are parametrized statically.
Property | Description |
---|---|
cancelAction
|
Assigns the action to execute when the user cancels the option. |
okAction
|
Assigns the action to execute when the user confirms the option. |
StaticOkCancelAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.StaticOkCancelAction
- Super-type :
OkCancelAction
This action pops-up an Ok - Cancel confirmation option. The message, instead of being extracted out of the context, is parametrized statically into the action through its internationalization key.
Property | Description |
---|---|
messageCode
|
Configures the i18n key used to translate the message that is to be displayed to the user. When the action executes, the statically configured message is first translated, then placed into the action context to be popped-up. |
YesNoAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.YesNoAction
- Super-type :
AbstractMessageAction
- Sub-types :
StaticYesNoAction
This action pops-up a binary question. Depending on user answer, another action is triggered. The Yes - No alternative actions are parametrized statically.
Property | Description |
---|---|
noAction
|
Assigns the action to execute when the user answers negatively to the question. |
yesAction
|
Assigns the action to execute when the user answers positively to the question. |
StaticYesNoAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.StaticYesNoAction
- Super-type :
YesNoAction
This action pops-up a binary question. The message, instead of being extracted out of the context, is parametrized statically into the action through its internationalization key.
Property | Description |
---|---|
messageCode
|
Configures the i18n key used to translate the message that is to be displayed to the user. When the action executes, the statically configured message is first translated, then placed into the action context to be popped-up. |
YesNoCancelAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.YesNoCancelAction
- Super-type :
AbstractMessageAction
- Sub-types :
StaticYesNoCancelAction
This action pops-up a binary question with Cancel option. Depending on user answer, another action is triggered. The Yes - No - Cancel alternative actions are parametrized statically.
Property | Description |
---|---|
cancelAction
|
Assigns the action to execute when the user cancels the option. |
noAction
|
Assigns the action to execute when the user answers negatively to the question. |
yesAction
|
Assigns the action to execute when the user answers positively to the question. |
StaticYesNoCancelAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.StaticYesNoCancelAction
- Super-type :
YesNoCancelAction
This action pops-up a binary question with Cancel option. The message, instead of being extracted out of the context, is parametrized statically into the action through its internationalization key.
Property | Description |
---|---|
messageCode
|
Configures the i18n key used to translate the message that is to be displayed to the user. When the action executes, the statically configured message is first translated, then placed into the action context to be popped-up. |
AbstractModuleDirtyStateAction
- Full name :
org.jspresso.framework.application.backend.action.module.AbstractModuleDirtyStateAction
- Super-type :
FrontendAction
- Sub-types :
CheckAllModulesDirtyStateAction
,CheckModuleDirtyStateAction
This is the base abstract class for actions that are responsible for checking module dirty state. Dirty is taken in the sense of an entity needing to be flushed to the persistent store. Among modules that are to be checked, a collection module is marked dirty if and only if one of its module objects is an entity which is dirty. On the other hand, a bean module is marked dirty if and only if its (single) module object is an entity and is dirty.
Property | Description |
---|---|
This class does not have any specific property. |
CheckAllModulesDirtyStateAction
- Full name :
org.jspresso.framework.application.backend.action.module.CheckAllModulesDirtyStateAction
- Super-type :
AbstractModuleDirtyStateAction
This action recomputes all application modules dirty state. All the workspaces are traversed as well as, for each workspace, the whole module hierarchy. This action is typically triggered before a user exists the application to bring up a notification of potentially lost pending changes.
Property | Description |
---|---|
This class does not have any specific property. |
CheckModuleDirtyStateAction
- Full name :
org.jspresso.framework.application.backend.action.module.CheckModuleDirtyStateAction
- Super-type :
AbstractModuleDirtyStateAction
This action recomputes the dirty state of the current selected module. It is typically triggered when the user navigates (leaves) out of the module to compute a visual notification of a pending change.
Property | Description |
---|---|
This class does not have any specific property. |
AnimateAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.mobile.AnimateAction
- Super-type :
AbstractRemoteAction
Selects animates current page.
Property | Description |
---|---|
animation
|
Sets animation. |
callbackAction
|
Sets callback action. |
direction
|
Sets direction. |
duration
|
Sets duration. |
hideView
|
Sets hide view. |
reverse
|
Sets reverse. |
BackPageAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.mobile.BackPageAction
- Super-type :
AbstractRemoteAction
Triggers back navigation of current page.
Property | Description |
---|---|
This class does not have any specific property. |
ChooseFileAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.file.ChooseFileAction
- Super-type :
AbstractRemoteAction
- Sub-types :
OpenFileAction
,SaveFileAction
This is the abstract base class for actions dealing with client file system
operations. It holds several parametrizations that are common to all file
operations. Please, be aware that these FS actions heavily depend on the UI
channel, i.e. you have different implementation classes (but registered under
the same Spring name) for all supported UI technologies. For instance,
SaveFileAction
will have as many implementations as the number
of supported UIs, each in a specific package :
org.jspresso.framework.application.frontend.action.
[ui]
.file.SaveFileAction
Property | Description |
---|---|
defaultFileName
|
Configures a default file name to be used whenever a file needs to be chosen. Subclasses ma use their specific callback to override this name with a more dynamically computed one. |
fileFilter
|
Configures the file filters to be used whenever the UI technology supports it in the file choosing dialog. Filter file types are a map of descriptions keying file extension lists. For instance, an entry in this map could be :
|
OpenFileAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.file.OpenFileAction
- Super-type :
ChooseFileAction
- Sub-types :
OpenFileAsBinaryPropertyAction
This action lets the user browse his local file system and choose a file to
read some content from. What is done with the file content is determined by
the configured fileOpenCallback
instance.
Property | Description |
---|---|
fileMaxSize
|
Sets the file max size. |
fileOpenCallback
|
Configures the file open callback instance that will be used to deal with the file dialog events. Two methods must be implemented :
|
OpenFileAsBinaryPropertyAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.file.OpenFileAsBinaryPropertyAction
- Super-type :
OpenFileAction
This action lets the user browse the local file system and choose a file to update the content of a binary property. Files are filtered based on the file filter defined in the binary property descriptor. This file action must be installed on a property view. A suitable (built-in) file open callback is installed upon action instantiation and thus, nothing has to be configured for the action to be immediately operational.
Property | Description |
---|---|
modelPath
|
Sets model path. |
SaveFileAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.file.SaveFileAction
- Super-type :
ChooseFileAction
- Sub-types :
SaveBinaryPropertyAsFileAction
This action lets the user browse his local file system and choose a file to
write some content to. What is done with the file content is determined by
the configured fileSaveCallback
instance.
Property | Description |
---|---|
contentType
|
Configures the content type to be used whenever the UI technology used
requires a download. The content type defaults to
|
fileSaveCallback
|
Configures the file save callback instance that will be used to deal with the file dialog events. Three methods must be implemented :
|
SaveBinaryPropertyAsFileAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.file.SaveBinaryPropertyAsFileAction
- Super-type :
SaveFileAction
This action lets the user browse the local file system and choose a file to save the content of a binary property to. Files are filtered based on the file filter defined in the binary property descriptor. This file action must be installed on a property view. A suitable (built-in) file open callback is installed upon action instantiation and thus, nothing has to be configured for the action to be immediately operational.
Property | Description |
---|---|
modelPath
|
Sets model path. |
CleanModuleAndGoBackIfTransientAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.mobile.CleanModuleAndGoBackIfTransientAction
- Super-type :
AbstractRemoteAction
Check current selected module object. If it is transient, removes it from the current module and go back.
Property | Description |
---|---|
This class does not have any specific property. |
DisplayJasperReportAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.remote.DisplayJasperReportAction
- Super-type :
AbstractRemoteAction
This action will take a JasperPrint
(a processed Jasper report
instance), produce a PDF output and open a browser window (tab) to display
it.
Property | Description |
---|---|
This class does not have any specific property. |
EditCurrentPageAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.mobile.EditCurrentPageAction
- Super-type :
AbstractRemoteAction
Triggers editing of current page.
Property | Description |
---|---|
This class does not have any specific property. |
NearElementAction
- Full name :
org.jspresso.framework.application.frontend.action.remote.mobile.NearElementAction
- Super-type :
AbstractRemoteAction
Selects next / previous element.
Property | Description |
---|---|
onFailureAction
|
Sets on failure action. |
onSuccessAction
|
Sets on success action. |
reverse
|
Sets reverse. |
AbstractReportAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.AbstractReportAction
- Super-type :
FrontendAction
- Sub-types :
ReportAction
,StaticReportAction
Abstract base class for Jasper report actions.
Property | Description |
---|---|
reportFactory
|
Configures the report factory to use. The report factory is responsible for
creating an |
ReportAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.ReportAction
- Super-type :
AbstractReportAction
This action allows the user to select a report to generate on the collection
view where it has been installed. The collection backing the view can either
be a collection of IReport
or IReportDescriptor
. In
the latter situation, the corresponding IReport
instances are
created on the fly using the configured report factory.
Property | Description |
---|---|
This class does not have any specific property. |
StaticReportAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.StaticReportAction
- Super-type :
AbstractReportAction
This action generates and displays a report that is statically configured
through the reportDescriptor
parameter. The report context is
augmented with the identifier of the entity that is selected in the view were
the action is installed, under the key ENTITY_ID
.
Property | Description |
---|---|
reportDescriptor
|
Configures the report to execute. |
ActionParamToSelectedModelAction
- Full name :
org.jspresso.framework.application.frontend.action.ActionParamToSelectedModelAction
- Super-type :
FrontendAction
A very simple frontend action that uses the puts the context action param as selected model.
Property | Description |
---|---|
This class does not have any specific property. |
AddBeanAsSubModuleFrontAction
- Full name :
org.jspresso.framework.application.frontend.action.AddBeanAsSubModuleFrontAction
- Super-type :
FrontendAction
This action can be installed on any collection view and will take the selected elements in the underlying model collection and create a bean module out of them.
Property | Description |
---|---|
childModuleProjectedViewDescriptor
|
Sets the childModuleProjectedViewDescriptor. |
parentModuleName
|
Sets the parent module where to add components to. |
parentWorkspaceName
|
Sets the WorkspaceName where to add components to. |
referencePath
|
Allows to configure a property path to extract the bean(s) to add from the selected models. If |
AddCollectionToMasterAction
- Full name :
org.jspresso.framework.application.frontend.action.std.AddCollectionToMasterAction
- Super-type :
FrontendAction
This action is designed to wrap a backend action that will create and add a
(collection of) component(s) to the model collection of the view it's
installed on. Its objective is to complete the action context with the
descriptor of the component (or entity) to be added so that the backend
action explicitly knows what to create. Moreover, the name, description and
icon used for the graphical representation are all computed out of the
configured elementEntityDescriptor
.
Property | Description |
---|---|
elementEntityDescriptor
|
Configures the descriptor of the entities that are to be added by the action to the underlying model collection. Setting this property serves multiple objectives :
|
AddPageAction
- Full name :
org.jspresso.framework.application.frontend.action.std.mobile.AddPageAction
- Super-type :
FrontendAction
A special mobile pagination action that adds a page to the current results.
Property | Description |
---|---|
This class does not have any specific property. |
BinaryPropertyInfoAction
- Full name :
org.jspresso.framework.application.frontend.action.std.BinaryPropertyInfoAction
- Super-type :
FrontendAction
This action displays information about a binary property content. The displayed information mainly consists in the content size. The action must be installed on a property view and supports textual and binary properties.
Property | Description |
---|---|
modelPath
|
Sets model path. |
ChooseActionAction
- Full name :
org.jspresso.framework.application.frontend.action.flow.ChooseActionAction
- Super-type :
FrontendAction
This action displays a list of frontend actions so that the user can choose
and launch one of them. This action is meant to be chained with the generic
ChooseComponentAction
so that the action list is actually
displayed.
Property | Description |
---|---|
actions
|
Configures the list of actions to choose from. |
ChooseComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.ChooseComponentAction
- Super-type :
FrontendAction
This action takes an arbitrary model collection connector from the action
context parameter and binds it to a newly created table view. This action is
meant to be chained to the generic ModalDialogAction
so that the
table is actually popped-up in a dialog. Two actions (okAction
and cancelAction
) can be configured to react to the user
decision.
Property | Description |
---|---|
cancelAction
|
Configures the action that will be triggered when the user cancels the component choice. |
collectionViewDescriptor
|
Sets the collectionViewDescriptor. |
componentDescriptor
|
Sets the componentDescriptor. |
okAction
|
Configures the action that will be triggered when the user confirms the component choice. the chosen component will then be retrieved from the selected view item. |
CloseDialogAction
- Full name :
org.jspresso.framework.application.frontend.action.CloseDialogAction
- Super-type :
FrontendAction
- Sub-types :
EditSelectedComponentAction.DefaultOkAction
This is a very generic action that closes (disposes) the currently opened dialog. The dialog is actually closed between the wrapped action and the next action if and only if the wrapped action succeeds.
Property | Description |
---|---|
This class does not have any specific property. |
EditSelectedComponentAction.DefaultOkAction
- Full name :
org.jspresso.framework.application.frontend.action.std.EditSelectedComponentAction.DefaultOkAction
- Super-type :
CloseDialogAction
Default OK action.
Property | Description |
---|---|
This class does not have any specific property. |
CreateEntityFromLovPersistAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.CreateEntityFromLovPersistAction
- Super-type :
FrontendAction
The type Create entity from lov persist action.
Property | Description |
---|---|
This class does not have any specific property. |
DisplayNextPinnedModuleAction
- Full name :
org.jspresso.framework.application.frontend.action.module.DisplayNextPinnedModuleAction
- Super-type :
FrontendAction
This action triggers a "forward" navigation in the recorded module history. The frontend controller automatically keeps track of the traversed modules so that a user can go back and forward his navigation history, much like for a web navigation.
Property | Description |
---|---|
This class does not have any specific property. |
DisplayPreviousPinnedModuleAction
- Full name :
org.jspresso.framework.application.frontend.action.module.DisplayPreviousPinnedModuleAction
- Super-type :
FrontendAction
This action triggers a "backward" navigation in the recorded module history. The frontend controller automatically keeps track of the traversed modules so that a user can go back and forward his navigation history, much like for a web navigation.
Property | Description |
---|---|
This class does not have any specific property. |
DisplayUrlAction
- Full name :
org.jspresso.framework.application.frontend.action.std.DisplayUrlAction
- Super-type :
FrontendAction
- Sub-types :
DisplayStaticUrlAction
This action opens a browser (or a browser tab) targeted at a URL. The actual
URL is a composition of a static parametrized prefix (baseUrl
)
and a dynamic part taken from the action context parameter.
Property | Description |
---|---|
baseUrl
|
Configures the static prefix that is prepended (if not |
target
|
Sets the target window. |
DisplayStaticUrlAction
- Full name :
org.jspresso.framework.application.frontend.action.std.DisplayStaticUrlAction
- Super-type :
DisplayUrlAction
Like its parent, this action opens a URL in a browser (or a browser tab). But
instead of taking the URL out of the context, it uses a statically
parametrized URL, or rather a key (urlKey
) used to translate
the URL based on the logged-in user language. This is particularly useful for
linking to static internationalized content, like an online manual. Be aware
that once the URL is translated, it is still appended to the
baseUrl
.
Property | Description |
---|---|
urlKey
|
Configures the translation key used to internationalize the URL to open. |
EditSelectionAction
- Full name :
org.jspresso.framework.application.frontend.action.EditSelectionAction
- Super-type :
FrontendAction
This action is meant to trigger editing on the current collection view whenever a single element is selected.
Property | Description |
---|---|
This class does not have any specific property. |
ExecuteActionAction
- Full name :
org.jspresso.framework.application.frontend.action.std.ExecuteActionAction
- Super-type :
FrontendAction
This generic action takes another arbitrary action out of the context parameter and executes it.
Property | Description |
---|---|
This class does not have any specific property. |
ExitAction
- Full name :
org.jspresso.framework.application.frontend.action.workspace.ExitAction
- Super-type :
FrontendAction
This action exits the application. Before doing so, user activated application modules are traversed to check that no pending changes need to be forwarded to the persistent store. Also asynchronous executor thread are traversed to check for still alive one. Whenever the dirty checking is positive, or any asynchronous executor is still alive, then the user is notified and given a chance to cancel the exit.
Property | Description |
---|---|
checkCurrentModuleDirtyStateAction
|
Configures the action used to perform dirty checking on current module to update its dirty state. It will be triggered just before a global iteration is performed on all the application modules to be able to notify the user that pending changes are not yet flushed to the persistent store. |
ListApplicationElementsAction
- Full name :
org.jspresso.framework.application.frontend.action.controller.ListApplicationElementsAction
- Super-type :
FrontendAction
This is a special frontend action to list all application metamodel elements available along with their permIds. This is particularly useful to set-up the base of security referential setup.
Property | Description |
---|---|
This class does not have any specific property. |
LoginAction
- Full name :
org.jspresso.framework.application.frontend.action.security.LoginAction
- Super-type :
FrontendAction
This is the frontend action to trigger the application login using the current credential in the frontend controller.
If the action is configured with anonymous = true
, then an anonymous login is attempted. If not,
a normal login is performed.
Property | Description |
---|---|
anonymous
|
Sets anonymous. |
changePasswordAction
|
Sets change password action. |
LovAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.LovAction
- Super-type :
FrontendAction
- Sub-types :
MobileLovAction
This is a standard "List Of Values" action for reference property
views. Although this action is used by default in view factories on reference
fields, it can also be used in a more standard way, i.e. registered as a view
action. In the latter, the okAction
must be configured to
perform a custom treatment once the entity is chosen from the LOV.
Additionally you can statically configure the descriptor of the searched
entities using the entityDescriptor
parameter so that the LOV
will act on this type of entities.
The LOV action prepares a QBE view (filter / result list) along with 3
actions that can be further refined : findAction
,
okAction
and cancelAction
. It must the be linked to
a ModalDialogAction
so that the LOV actually pops up.
Property | Description |
---|---|
autoquery
|
Whenever setting autoquery to |
cancelAction
|
Configures the action to be executed whenever the user cancels the LOV dialog. |
componentDescriptorRegistry
|
Sets component descriptor registry. |
createAction
|
Sets create action. |
createQueryComponentAction
|
Configures the action used to create the filter query component based on the type of entities backing the LOV. |
criteriaFactory
|
Sets criteria factory. Depending on the persistence layer used, it should be an instance of :
|
criteriaRefiner
|
Sets criteria refiner. Depending on the persistence layer used, it should be an instance of :
|
defaultIconImageURL
|
Sets the defaultIconImageURL. |
entityDescriptor
|
Configures explicitly the type of entities the LOV relies on. This is automatically determined when installed on a reference field but must be set in any other case. |
findAction
|
Configures the action to be executed whenever the user queries the persistent store, either explicitly when using the action installed in the LOV dialog or implicitly through the auto query feature. |
findOnSet
|
Whenever setting findOnSet to |
findOnType
|
Whenever setting findOnType to |
initializationMapping
|
Whenever the LOV action is not used on a reference field, in which case the
filter initialization mapping is taken from the reference field descriptor
(see |
lovViewDescriptorFactory
|
Configures the factory to be used to create the QBE view used in the dialog. |
lovViewDescriptorForCreationFactory
|
Configures the factory to be used to create the LOV's on-the-fly-creation view. |
okAction
|
Configures the action to be executed whenever the user validates the LOV selection. |
pageSize
|
Sets page size. |
pagingAction
|
Sets the pagingAction. |
preselectItems
|
Should the LOV view pre-select items in the LOV view. |
queryComponentRefiner
|
Sets query component refiner. |
selectionMode
|
Allows to force the result view selection mode. |
staticComponentStore
|
Sets static component store. |
MobileLovAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.mobile.MobileLovAction
- Super-type :
LovAction
This is a standard "List Of Values" action for mobile environment.
Property | Description |
---|---|
This class does not have any specific property. |
ModalDialogAction
- Full name :
org.jspresso.framework.application.frontend.action.ModalDialogAction
- Super-type :
FrontendAction
This is a very generic action that takes its specifications out of the action context, creates and pops-up a modal dialog based on these specs. The action is meant to be chained after another frontend action that produce the dialog specs into the action context. Context entries that are used are :
DIALOG_VIEW
: the view to be used as the dialog content pane.DIALOG_TITLE
: the title of the dialog.DIALOG_ACTIONS
: the actions to be installed at the bottom of the dialog.DIALOG_SIZE
: the dialog preferred size. Whenever the dialog size isnull
, the dialog size is determined from the preferred size of the content view.
Property | Description |
---|---|
triggerOnEnter
|
Sets trigger on enter. |
ModuleRestartAction
- Full name :
org.jspresso.framework.application.frontend.action.module.ModuleRestartAction
- Super-type :
FrontendAction
This action is used to restart a module. It cleans its children and executes its startup action.
Property | Description |
---|---|
This class does not have any specific property. |
ModuleSelectionAction
- Full name :
org.jspresso.framework.application.frontend.action.module.ModuleSelectionAction
- Super-type :
FrontendAction
Displays a module, and the corresponding workspace if necessary based on their names. It can be used as startup action to select and display a module when the application launches.
Property | Description |
---|---|
moduleName
|
Configures the name (untranslated) of the module to be displayed. |
workspaceName
|
Configures the name (untranslated) of the workspace to be displayed. |
NavigateModuleObjectsAction
- Full name :
org.jspresso.framework.application.frontend.action.module.NavigateModuleObjectsAction
- Super-type :
FrontendAction
Navigates the module objects by selecting the next / previous element.
Property | Description |
---|---|
offset
|
Sets offset. |
OkChooseComponentAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.OkChooseComponentAction
- Super-type :
FrontendAction
This action augments the context by setting the action parameter to the selected component of the collection view (or null if none is selected).
Property | Description |
---|---|
This class does not have any specific property. |
OkLovAction
- Full name :
org.jspresso.framework.application.frontend.action.lov.OkLovAction
- Super-type :
FrontendAction
This action augments the context by setting the action parameter to the selected entity of the LOV result list (or null if none is selected).
Property | Description |
---|---|
This class does not have any specific property. |
PageOffsetAction
- Full name :
org.jspresso.framework.application.frontend.action.std.PageOffsetAction
- Super-type :
FrontendAction
This action simply augment the context with a page offset integer (
PAGE_OFFSET
). It is meant to be linked to a find/query action
that will further leverage this offset to navigate a pageable result set.
Property | Description |
---|---|
pageOffset
|
Configures the page offset to be set to the action context. |
ParentModuleConnectorSelectionAction
- Full name :
org.jspresso.framework.application.frontend.action.module.ParentModuleConnectorSelectionAction
- Super-type :
FrontendAction
This action simply displays the parent of the currently selected module; i.e. it goes up one level in the module hierarchy of the current workspace.
Property | Description |
---|---|
This class does not have any specific property. |
PrintAction
- Full name :
org.jspresso.framework.application.printing.frontend.action.PrintAction
- Super-type :
FrontendAction
This action allows the user to choose a report among a list and print it. The list of available reports is statically configured into the action.
Property | Description |
---|---|
reportDescriptors
|
Configures the available report descriptors the user will be allowed to choose. |
reportFactory
|
Configures the report factory to use. The report factory is responsible for
creating an |
QueryFilterModuleAction
- Full name :
org.jspresso.framework.application.frontend.action.module.QueryFilterModuleAction
- Super-type :
FrontendAction
Queries filter module and notify user of empty record set.
Property | Description |
---|---|
criteriaFactory
|
Sets criteria factory. Depending on the persistence layer used, it should be an instance of :
|
criteriaRefiner
|
Sets criteria refiner. Depending on the persistence layer used, it should be an instance of :
|
emptyResultAction
|
Sets empty result action. |
queryComponentRefiner
|
Sets query component refiner. |
RefreshCardViewFrontAction
- Full name :
org.jspresso.framework.application.frontend.action.std.RefreshCardViewFrontAction
- Super-type :
FrontendAction
Refresh card view having given permId
Property | Description |
---|---|
cardViewId
|
Sets the card view id. |
viewPath
|
Sets view path to start search from. |
RefreshControllerDescriptionAction
- Full name :
org.jspresso.framework.application.frontend.action.controller.RefreshControllerDescriptionAction
- Super-type :
FrontendAction
Refreshes frontend controller name and description.
Property | Description |
---|---|
This class does not have any specific property. |
RemoveComponentsFromWorkspacesFrontAction
- Full name :
org.jspresso.framework.application.frontend.action.std.RemoveComponentsFromWorkspacesFrontAction
- Super-type :
FrontendAction
Remove selected models from workspaces front action.
Property | Description |
---|---|
This class does not have any specific property. |
ResetPasswordAction
- Full name :
org.jspresso.framework.application.frontend.action.security.ResetPasswordAction
- Super-type :
FrontendAction
This is the frontend action to initiate a user password reset. The username to change the password for is
retrieved from the selected model using the usernameProperty parameterized in the action.
This action must wrap with a concrete subclass of backend AbstractResetPasswordAction
that performs
the actual password reset depending on the authentication backend. Jspresso offers one concrete implementation :
DatabaseChangePasswordAction
for JDBC based authentication backend
Property | Description |
---|---|
usernameProperty
|
Sets username property. |
SaveModuleObjectFrontAction
- Full name :
org.jspresso.framework.application.frontend.action.module.SaveModuleObjectFrontAction
- Super-type :
FrontendAction
This action is used to save module and sub-modules objects.
Property | Description |
---|---|
dirtyTrackingEnabled
|
Set dirty tracking enabled. |
SelectedModelToActionParamAction
- Full name :
org.jspresso.framework.application.frontend.action.SelectedModelToActionParamAction
- Super-type :
FrontendAction
A very simple frontend action that puts the selected model(s) as context action param.
Property | Description |
---|---|
This class does not have any specific property. |
SetConnectorValueAction
- Full name :
org.jspresso.framework.application.frontend.action.std.SetConnectorValueAction
- Super-type :
FrontendAction
This action retrieves the action parameter from the action context and assigns it as value to the targeted connector. The connector to target is itself retrieved from the action context using a parametrized key.
Property | Description |
---|---|
connectorActionContextKey
|
Configures the key to look for the target connector in the context, e.g. VIEW_CONNECTOR. |
TransferToClipboardAction
- Full name :
org.jspresso.framework.application.frontend.action.std.TransferToClipboardAction
- Super-type :
FrontendAction
An action used to transfer textual representation(s) of selected models to the system clipboard.
Property | Description |
---|---|
clipboardTransferHandler
|
Sets the clipboardTransferHandler. |
EditSelectedComponentAction.UowRollbackerAction
- Full name :
org.jspresso.framework.application.frontend.action.std.EditSelectedComponentAction.UowRollbackerAction
- Super-type :
FrontendAction
A wrapper action that roll backs the current UOW before delegating to its delegate.
Property | Description |
---|---|
This class does not have any specific property. |
WizardAction
- Full name :
org.jspresso.framework.application.frontend.action.wizard.WizardAction
- Super-type :
FrontendAction
This action implements a "wizard". It can be configured from the simplest use-case (as for a value entering) to the most complex, multi-step wizard. Here are a usage directions :
- The generic wizard front-end action is registered in the Spring context under the name wizardAction. So you will typically inherit the bean definition using the parent="wizardAction" when declaring yours.
- The goal of the wizard action is to work on a map - the wizard model - (potentially containing other maps) that represents a hierarchical data structure that can be used seamlessly as model for any Jspresso view. In your case, the map will only contain 1 key-value pair (the property you want your user to enter). When finishing the wizard, the action context will contain the map with all the key-value pairs the user has created/modified through the wizard steps. It will be accessible in the action context under the ActionContextConstants.ACTION_PARAM key and will typically serve as input for the finish chained action.
- The wizard action is configured using chained
org.jspresso.framework.application
.frontend.action.wizard.IWizardStepDescriptor. A concrete, directly usable,
implementation of this interface is
org.jspresso.framework.application.frontend
.action.wizard.StaticWizardStepDescriptor. Each wizard step is highly
configurable (name, description, icon, ...) but its most important properties
are :
viewDescriptor
: the Jspresso view descriptor to be shown in the wizard GUI when the user enters this step. It can be arbitrarily complex (even with master-detail like views, inner actions, constraints, security enforcements, ...). Of course, the view descriptor needs a model descriptor. So you must describe the wizard model as you would do for persistent entities or components (so that step views can configure themselves). You will typically use a BasicComponentDescriptor without name so that it is automatically excluded from code generation. Note that your actual model object will be a map (and not Jspresso generated java bean) but Jspresso connectors are "smart" enough to detect the situation and work with the hierarchy of maps as if it was a hierarchy of java beans.- optional
onEnterAction
andonLeaveAction
: actions that will respectively be executed when entering and when exiting the wizard step. - optional
nextLabelKey
andpreviousLabelKey
: i18n keys for next and previous buttons if you want to change the default ones. - optional
nextStepDescriptor
: the next wizard step. If null, the wizard GUI will enable the finish action.
- The first wizard step is registered on the wizard action using the
firstWizardStep
property. - When the user leaves the last wizard step (clicking the finish action
button), the finish action is triggered. The finish action can be registered
on the wizard action using the
finishAction
property. This is typically the place where you explore the wizard map model -ACTION_PARAM
- to get back all the data the user has worked on. Note that the finish button is entirely configured from the finish action (label and icon).
</ol>
Property | Description |
---|---|
cancelAction
|
Configures the action that will be executed whenever the user cancels the wizard. |
finishAction
|
Configures the action that will be executed whenever the user validates the wizard. |
firstWizardStep
|
Configures the first wizard step to display. |
height
|
Configures explicitly the height of the wizard dialog. It prevents the dialog from resizing dynamically depending on the displayed wizard step. |
width
|
Configures explicitly the width of the wizard dialog. It prevents the dialog from resizing dynamically depending on the displayed wizard step. |
WorkspaceSelectionAction
- Full name :
org.jspresso.framework.application.frontend.action.workspace.WorkspaceSelectionAction
- Super-type :
FrontendAction
This action displays a workspace using its (untranslated) name.
Property | Description |
---|---|
forceReselection
|
Sets force reselection. |
workspaceName
|
Configures the name of the workspace to display. |
Built-in actions
You will find here the complete list of Jspresso built-in actions along with their Spring id and a short description.
Spring Id | SJS Id | Description |
---|---|---|
pasteCollectionBackAction | back.component.paste | Pastes entities/components from the application clipboard. |
removeCollectionFromMasterBackAction | back.component.remove | Marks the selected objects for deletion (next save operation) and removes them from the master managed collection. |
saveBackAction | back.component.save | Gets a collection of entities to save out of the context and saves them transactionally. |
createQueryComponentAction | back.filter.create | Creates a filter model for QBE queries and set it as value of the filter model connector retrieved from the context. |
initModuleFilterAction | back.filter.init | Retrieves the current module filter connector and adds it in the context. |
queryEntitiesBackAction | back.filter.query | Executes an QBE query based on a filter retrieved from the context. The resulting entity collection is added to the context. |
reloadBackAction | back.module.reload | Reloads current module selected objects from the persistent store. |
removeFromModuleObjectsAction | back.module.remove | Marks current module selected objects for deletion (next save operation) and removes them from the module managed collection. |
saveModuleObjectBackAction | back.module.save | Saves the current module selected objects to the persistent store. |
doPrintBackendAction | back.report.generate | Generates a Jasper report and adds it to the context. |
scriptedBackAction | back.script.dynamic | Executes a script taken out of the context. Supports any BSF supported language (Groovy, Jython, Beanshell, ...). |
staticScriptedBackAction | back.script.static | Executes a script statically defined as an action parameter. Supports any BSF supported language (Groovy, Jython, Beanshell, ...). |
lovFindBackAction | back.lov.find | Standard QBE find action for "list of values". |
abstractChooseActionAction | front.action.choose | Opens a modal dialog box offering a choice of actions. |
executeActionAction | front.action.execute | Takes an action out of the context and executes it. |
chooseActionOkFrontAction | front.action.ok | Gets the selected action and places it in the context for execution. |
addAnyToMasterFrontAction | front.any.add | Retrieves an object collection from the context and appends it to the master managed collection (no creation). |
moveDownFrontAction | front.any.down | Moves downward the selected objects contained in an ordered collection. |
moveBottomFrontAction | front.any.bottom | Moves bottom the selected objects contained in an ordered collection. |
removeAnyCollectionFromMasterFrontAction | front.any.remove | After user confirmation, retrieves an object collection from the context and removes it from the master managed collection. |
moveUpFrontAction | front.any.up | Moves upward the selected objects contained in an ordered collection. |
moveTopFrontAction | front.any.top | Moves top the selected objects contained in an ordered collection. |
binaryPropertyInfoAction | front.binary.info | Retrieves a binary property value out of the connector and opens a message box displaying the size of the binary content. |
openFileAsBinaryPropertyAction | front.binary.load | Let the user browse the local file system to choose a file. The file content is used as the content of a binary property. |
saveBinaryPropertyAsFileAction | front.binary.save | Let the user browse the local file system to choose a file. The file is used to save the content of a binary property. |
chartAction | front.chart | Computes and displays a fusioncharts chart. |
abstractAddToMasterFrontAction | front.component.add.abstract | Creates a new entity/component and adds it to the master managed collection. No icon nor accelerator set. |
addToMasterFrontAction | front.component.add | Creates a new entity/component and adds it to the master managed collection. |
chooseComponentAction | front.component.choose | Opens a modal dialog to let the user choose an component/entity out of a collection retrieved from the context. |
cloneEntityCollectionFrontAction | front.component.clone | Duplicates selected entities/components and adds the clones to the master managed collection. |
copyCollectionFrontAction | front.component.copy | Copies the selected entities/components to the application clipboard. |
cutCollectionFrontAction | front.component.cut | Cuts the selected entities/components to the application clipboard. |
editSelectedComponentAction | front.selected.edit | Opens a dialog box to edit the selected entity/component in an arbitrary view. |
editComponentAction | front.component.edit | Opens a dialog box to edit an entity/component in an arbitrary view. |
pasteCollectionFrontAction | front.component.paste | Pastes entities/components from the application clipboard. |
removeEntityCollectionFromMasterFrontAction | front.component.remove | After user confirmation, marks the selected objects for deletion (next save operation) and removes them from the master managed collection. |
viewConnectorSetAction | front.connector.set | Retrieves an arbitrary value from the context and assigns it to the view connector value. |
okDialogFrontAction | front.dialog.ok | Closes the top most dialog. Icon and name set. |
cancelDialogFrontAction | front.dialog.cancel | Closes the top most dialog. Icon and name set. |
closeDialogAction | front.dialog.close | Closes the top most dialog. |
modalDialogAction | front.dialog.open | Opens a modal dialog box that is parametrized out of context values (title, view bound to its model, size, secondary action list). |
openFileAction | front.file.open | Let the user browse the local file system to choose a file. The selected file content is placed in the context. |
saveFileAction | front.file.save | Let the user browse the local file system to choose a file. The selected file is used to save an arbitrary content taken from the context. |
nextModuleFilterPageAction | front.filter.next | Moves to the next result page of a filtered module. |
previousModuleFilterPageAction | front.filter.previous | Moves to the previous result page of a filtered module. |
queryModuleFilterAction | front.filter.query | Performs the QBE query of a filtered module. |
infoFrontAction | front.info.dynamic | Retrieves an information message from the context and displays it to the user. |
staticInfoFrontAction | front.info.static | Translates an information message statically parametrized in the action and displays it to the user. |
lovAction | front.lov | Pops-up a "list of values" dialog. |
lovFindFrontAction | front.lov.find | Performs the QBE query of a "list of values". |
nextLovPageFrontAction | front.lov.next | Moves to the next result page of a "list of values". |
lovOkFrontAction | front.lov.ok | Gets the selected result from a "list of values" and places it in the context. |
previousLovPageFrontAction | front.lov.previous | Moves to the previous result page of a "list of values". |
addMapToMasterFrontAction | front.map.add | Creates a new map and adds it to the master managed collection. |
cloneMapCollectionFrontAction | front.map.clone | Duplicates selected maps and adds the clones to the master managed collection. |
cloneMapCollectionFrontAction | front.map.clone | Duplicates selected maps and adds the clones to the master managed collection. |
cloneModuleObjectFrontAction | front.module.clone | Duplicates selected entities/components and adds the clones to the module managed collection. |
reloadModuleObjectFrontAction | front.module.reload | Reloads the module selected entity/component from the persistent store. entities/components previously marked for deletion are also restored. |
removeFromModuleObjectFrontAction | front.module.remove | After user confirmation, marks the selected module entities/components for deletion (next save operation) and removes them from the module managed collection. |
restartModuleFrontAction | front.module.reset | Restarts the current module. |
saveModuleObjectFrontAction | front.module.save | Saves the module selected entities/components to the persistent store and performs deletion of previously "marked for deletion" entities/components. |
saveModuleObjectAndGoBackFrontAction | front.module.save.back | Saves the module selected entities/components to the persistent store and performs deletion of previously "marked for deletion" entities/components. If successful, returns back to the parent module. |
parentModuleConnectorSelectionFrontAction | front.module.back | Returns back to the parent module. |
moduleConnectorSelectionFrontAction | front.module.select | Gets a module out or the context and selects it in the current workspace. |
addAsChildModuleFrontAction | front.module.sub | Gets selected module objects, adds them as current module children then selects them. |
nextPinnedModuleAction | front.module.next | Navigates to the next pinned module in history. |
previousPinnedModuleAction | front.module.previous | Navigates to the previous pinned module in history. |
okCancelFrontAction | front.okcancel.dynamic | Retrieves an ok/cancel message out of the context and displays it to the user. |
staticOkCancelFrontAction | front.okcancel.static | Retrieves an ok/cancel message statically parametrized in the action and displays it to the user. |
changePasswordAction | front.password.change | Opens a dialog box allowing the user to initiate a password change operation (old, new, check). |
printOkFrontAction | front.print.ok | Retrieves the selected Jasper report and puts it in the context for display/print. |
resetPropertyFrontAction | front.property.reset | Resets a property to its default value. |
displayReportAction | front.report.display | Displays/prints a Jasper report taken out of the context to the user. |
reportAction | front.report.dynamic | Retrieves a Jasper report definition out of the context, opens the report parameters entry dialog, then triggers generation and display/print. |
editReportParametersAction | front.report.edit | Opens a dialog box for the user to input a Jasper report parameters. |
doPrintAction | front.report.print | Triggers generation and display/print of a Jasper report after parameters input. |
staticReportAction | front.report.static | Gets a Jasper report definition statically defined as an action parameter, opens the report parameters entry dialog, then triggers generation and display/print. |
displayUrlFrontAction | front.url.dynamic | Targets the browser (actually a new browser window/tab) to a URL retrieved from the context. |
staticDisplayUrlFrontAction | front.url.static | Targets the browser (actually a new browser window/tab) to a URL statically defined as an action parameter. The URL is previously translated so thant it can be variabilized based on the user language (used for online help for instance). |
connectorSelectionFrontAction | front.view.select | Retrieves an object collection out of the context and selects it on the collection view (table, list, tree). |
wizardAction | front.wizard | Triggers a wizard dialog. |
yesNoFrontAction | front.yesno.dynamic | Retrieves a yes/no binary question out of the context and displays it to the user. |
staticYesNoFrontAction | front.yesno.static | Retrieves a yes/no binary question statically parametrized in the action and displays it to the user. |
yesNoCancelFrontAction | front.yesnocancel.dynamic | Retrieves a yes/no/cancel binary question out of the context and displays it to the user. |
staticYesNoCancelFrontAction | front.yesnocancel.static | Retrieves a yes/no/cancel binary question statically parametrized in the action and displays it to the user. |