Flow Definition Language 1.0 to 2.0 Mappings
The flow definition language has changed since the 1.0 release.
This is a listing of the language elements in the 1.0 release, and how they map to elements in the 2.0 release.
While most of the changes are semantic, there are a few structural changes.
Please see the upgrade guide for more details about changes between Web Flow 1.0 and 2.0.
Mappings
SWF 1.0
SWF 2.0
Comments
action
*
use <evaluate />
bean
*
name
*
method
*
action-state
action-state
id
id
*
parent
argument
*
use <evaluate expression="func(arg1, arg2, ...)"/>
expression
parameter-type
attribute
attribute
name
name
type
type
value
value
attribute-mapper
*
input and output elements can be in flows or subflows directly
bean
*
now subflow-attribute-mapper attribute on subflow-state
bean-action
*
use <evaluate />
bean
*
name
*
method
*
decision-state
decision-state
id
id
*
parent
end-actions
on-end
end-state
end-state
id
id
view
view
*
parent
*
commit
entry-actions
on-entry
evaluate-action
evaluate
expression
expression
name
*
use <evaluate ...> <attribute name=”name” value="..." /> </evaluate>
*
result
*
result-type
evaluation-result
*
use <evaluate result="..." />
name
*
scope
*
exception-handler
exception-handler
bean
bean
exit-actions
on-exit
flow
flow
*
start-state
*
parent
*
abstract
global-transitions
global-transitions
if
if
test
test
then
then
else
else
import
bean-import
resource
resource
inline-flow
*
convert to new top-level flow
id
*
input-attribute
input
name
name
scope
*
prefix name with scope <input name="flowScope.foo" />
required
required
*
type
*
value
input-mapper
*
inputs can be in flows and subflows directly
mapping
input or output
source
name or value
name when in flow element, value when in subflow-state element
target
name or value
value when in flow element, name when in subflow-state element
target-collection
*
no longer supported
from
*
detected automatically
to
type
required
required
method-argument
*
use <evaluate expression="func(arg1, arg2, ...)"/>
method-result
*
use <evaluate result="..." />
name
*
scope
*
output-attribute
output
name
name
scope
*
prefix name with scope <output name="flowScope.foo" />
required
required
*
type
*
value
output-mapper
*
output can be in flows and subflows directly
render-actions
on-render
set
set
attribute
name
scope
*
prefix name with scope <set name="flowScope.foo" />
value
value
name
*
use <set ...> <attribute name=”name” value="..." /> </set>
*
type
start-actions
on-start
start-state
*
now <flow start-state="...">, or defaults to the first state in the flow
idref
*
subflow-state
subflow-state
id
id
flow
subflow
*
parent
*
subflow-attribute-mapper
transition
transition
on
on
on-exception
on-exception
to
to
*
bind
value
value
var
var
name
name
class
class
scope
*
always flow scope
bean
*
all Spring beans can be resolved with EL
view-state
view-state
id
id
view
view
*
parent
*
redirect
*
popup
*
model
*
history
*
persistence-context
*
render
*
fragments
*
secured
*
attributes
*
match