Expert Spring MVC and Web Flow

(Dana P.) #1

Figure 11-6.View of the View->Server->View Interaction


Summary


Spring Web Flow was designed from the outset to manage the definition and execution of
a dialogue between a user and the server. It is not an extension to Spring MVC, but rather a
stand-alone (and very well-integrated) tool for developing self-contained application con-
troller modules.


Model Conversations


Developers now have a tool kit that explicitly models the conversational flow, in addition to
providing access to the existing servlet (or portlet) infrastructure.
Conversation scope is not just a subset of session scope; it is the ability to assign each new
conversation its own new data set. Request scope is unique per page request, session scope is
unique per browser, and conversation scope is unique per conversation. Conversations can
actually span sessions (more on this in Chapter 12) or exist multiple times within the same
session.


Create a new FlowExecution
for the flow named
“purchase-flow”

Execute the first state
(enterPurchaseInformation)

Load the view and state
specified by the flowExecutionId,
and progress to the
“submit” transition

Continue through the flow

_flowId=purchase-flow

_flowExecutionId=
(purchase-flow, enterPurchaseInformation)

_flowExecutionId=
(purchase-flow, enterPurchaseInformation)

_eventId=submit

View

View

View

CHAPTER 11 ■INTRODUCTION TO SPRING WEB FLOW 333
Free download pdf