This section explores flow-executor configuration options.
Use the flow-execution-listeners element to register listeners that observe the lifecycle of flow executions:
<webflow:flow-execution-listeners>
<webflow:listener ref="securityListener"/>
<webflow:listener ref="persistenceListener"/>
</webflow:flow-execution-listeners>
You may also configure a listener to observe only certain flows:
<webflow:listener ref="securityListener" criteria="securedFlow1,securedFlow2"/>
Use the flow-execution-repository element to tune flow execution persistence settings:
<webflow:flow-executor id="flowExecutor" flow-registry="flowRegistry">
<webflow:flow-execution-repository max-executions="5" max-execution-snapshots="30" />
</webflow:flow-executor>
Tune the max-executions attribute to place a cap on the number of flow executions that can be created per user session.
When the maximum number of executions is exceeded, the oldest execution is removed.
The max-executions attribute is per user session, i.e. it works across instances of any flow definition.
Tune the max-execution-snapshots attribute to place a cap on the number of history snapshots that can be taken per flow execution.
To disable snapshotting, set this value to 0. To enable an unlimited number of snapshots, set this value to -1.
History snapshots enable browser back button support. When snapshotting is disabled pressing the browser back button will not work. It will result in using an execution key that points to a snapshot that has not be recorded.