Extending CAS Using Spring Web Flow 20100309 11.54.13AM
X
Extending CAS Using Spring Web Flow
Slide 2
Overview
Disclaimer
What Is Spring Web Flow?
What Is Spring Web Flow?
How Does CAS Use Spring Web Flow?
What Is Spring Web Flow?
What Is Spring Web Flow?
What Is Spring Web Flow?
How Does CAS Use Spring Web Flow?
How Does CAS Use Spring Web Flow?
How Does CAS Use Spring Web Flow?
How Does CAS Use Spring Web Flow?
Adding New Functionality
Why Use SWF to Extend CAS?
New Bean
New View
New Action State
Demo
New Action State
Questions?
Demo
New Action State
New View
New Bean
00:00
/
00:00
CC
Extending
CAS
Using
Spring
Web
Flow
Adam
Rybicki
2010
Jasig
Conference,
San
Diego,
CA
March
8,
2010
©
Copyright
Unicon,
Inc.,
2009.
This
work
is
the
intellectual
property
of
Unicon,
Inc.
Permission
is
granted
for
this
material
to
be
shared
for
non-commercial,
educational
purposes,
provided
that
this
copyright
statement
appears
on
the
reproduced
materials
and
notice
is
given
that
the
copying
is
by
permission
of
Unicon,
Inc.
To
disseminate
otherwise
or
to
republish
requires
written
permission
from
Unicon,
Inc.
Overview
What
is
Spring
Web
Flow?
How
CAS
Uses
Spring
Web
Flow?
Adding
to
the
CAS
Flow
Adding
Action
Beans
Adding
Views
Example
Password
Update
Extension
Q/A
Overview
What
Is
Spring
Web
Flow?
How
Does
CAS
Use
Spring
Web
Flow?
Disclaimer
This
presentation
is
not
a
comprehensive
Spring
Web
Flow
(SWF)
introduction
It
is
not
even
a
SWF
overview
The
presenter
is
not
a
SWF
expert
This
presentation
is
only
meant
to
show
how
CAS
uses
SWF,
and
how
you
can,
too.
What
Is
Spring
Web
Flow?
Not
very
different
in
purpose
from:
Business
Process
Execution
Language
(BPEL)
Various
Workflow
standards
But
much
easier
to
get
started
with
No
huge
committee
behind
it
Couple
of
guys,
Keith
Donald
and
Erwin
Vervaet,
credited
for
creation
of
SFW
Easy
to
understand
and
become
productive
What
Is
Spring
Web
Flow?
Complements
Spring
Web
MVC
Allows
to
control
the
states
of
the
application
outside
of
its
controllers
action
state
decision
state
view
state
end
state
Upgrading
from
SWF
1
to
2
is
supported
org.springframework.webflow.upgrade.WebFlowUpgrader
How
Does
CAS
Use
Spring
Web
Flow?
Set
up
the
initial
state
Check
for
the
TGT
Display
the
login
form,
if
needed
Check
for
the
service
parameter
Redirect
to
service
or
display
a
generic
login
success
message
Set
up
“global”
exception-handling
state
transitions
What
Is
Spring
Web
Flow?
Complements
Spring
Web
MVC
Allows
to
control
the
states
of
the
application
outside
of
its
controllers
action
state
decision
state
view
state
end
state
Upgrading
from
SWF
1
to
2
is
supported
org.springframework.webflow.upgrade.WebFlowUpgrader
What
Is
Spring
Web
Flow?
Not
very
different
in
purpose
from:
Business
Process
Execution
Language
(BPEL)
Various
Workflow
standards
But
much
easier
to
get
started
with
No
huge
committee
behind
it
Couple
of
guys,
Keith
Donald
and
Erwin
Vervaet,
credited
for
creation
of
SFW
Easy
to
understand
and
become
productive
What
Is
Spring
Web
Flow?
Complements
Spring
Web
MVC
Allows
to
control
the
states
of
the
application
outside
of
its
controllers
action
state
decision
state
view
state
end
state
Upgrading
from
SWF
1
to
2
is
supported
org.springframework.webflow.upgrade.WebFlowUpgrader
How
Does
CAS
Use
Spring
Web
Flow?
Set
up
the
initial
state
Check
for
the
TGT
Display
the
login
form,
if
needed
Check
for
the
service
parameter
Redirect
to
service
or
display
a
generic
login
success
message
Set
up
“global”
exception-handling
state
transitions
How
Does
CAS
Use
Spring
Web
Flow?
CAS
uses
SWF
1
Beginning
with
CAS
3.4,
CAS
will
use
Spring
Framework
3
and
SWF
2
This
significantly
speeds
up
access
to
these
new
technologies
over
the
older
CAS4-based
CAS
roadmap
Details
in
the
Jasig
Wiki:
http://www.ja-sig.org/wiki/x/VwG0AQ
How
Does
CAS
Use
Spring
Web
Flow?
…
<action-state
id="initialFlowSetup">
<action
bean="initialFlowSetupAction"
/>
<transition
on="success"
to="ticketGrantingTicketExistsCheck"
/>
</action-state>
<decision-state
id="ticketGrantingTicketExistsCheck">
<if
test="${flowScope.ticketGrantingTicketId
!=
null}"
then="hasServiceCheck"
else="gatewayRequestCheck"
/>
</decision-state>
<decision-state
id="gatewayRequestCheck">
<if
test="${externalContext.requestParameterMap['gateway']
!=
''
&&
externalContext.requestParameterMap['gateway']
!=
null
&&
flowScope.service
!=
null}"
then="redirect"
else="viewLoginForm"
/>
</decision-state>
<view-state
id="viewLoginForm"
view="casLoginView">
<render-actions>
<action
bean="authenticationViaFormAction"
method="setupForm"/>
<action
bean="authenticationViaFormAction"
method="referenceData"/>
</render-actions>
<transition
on="submit"
to="bindAndValidate"
/>
</view-state>
<end-state
id="redirect"
view="bean:dynamicRedirectViewSelector"
/>
…
How
Does
CAS
Use
Spring
Web
Flow?
Adding
New
Functionality
Why
Is
This
A
Good
Path?
Adding
New
Business
Logic
Adding
New
Views
Why
Use
SWF
to
Extend
CAS?
Discrete
points
to
inject
new
functionality
The
only
thing
to
modify
is
the
flow
definition
New
beans
and
views
can
be
added
easily
with
Maven
overlay
build
method
New
Bean
SWF-specific
Spring
bean
type
Extends
org.springframework.webflow.action.AbstractAction
Access
to
the
flow
scope
object
also
accessible
in
the
flow
definition
file
doExecute()
method
contains
business
logic
and
returns
success()
or
error()
Event
types
Returned
Event
types
are
evaluated
in
the
flow
definition
file
New
View
Add
to
default_views.properties
View’s
name
directly
referenced
from
the
flow
definition
file
###
View
for
password
update
passwordUpdateView.(class)=org.springframework.web.servlet.view.JstlView
passwordUpdateView.url=/WEB-INF/view/jsp/default/ui/passwordUpdateView.jsp
New
Action
State
Add
to
login-webflow.xml
<action-state
id="testPasswordUpdate">
<action
bean="testPasswordUpdateAction"
/>
<transition
on="success"
to="serviceCheck"
/>
<transition
on="error"
to="viewPasswordUpdate"
/>
</action-state>
Demo
New
Action
State
Add
to
login-webflow.xml
<action-state
id="testPasswordUpdate">
<action
bean="testPasswordUpdateAction"
/>
<transition
on="success"
to="serviceCheck"
/>
<transition
on="error"
to="viewPasswordUpdate"
/>
</action-state>
Adam
Rybicki
arybicki@unicon.net
www.unicon.net
Questions?
Demo
New
Action
State
Add
to
login-webflow.xml
<action-state
id="testPasswordUpdate">
<action
bean="testPasswordUpdateAction"
/>
<transition
on="success"
to="serviceCheck"
/>
<transition
on="error"
to="viewPasswordUpdate"
/>
</action-state>
New
View
Add
to
default_views.properties
View’s
name
directly
referenced
from
the
flow
definition
file
###
View
for
password
update
passwordUpdateView.(class)=org.springframework.web.servlet.view.JstlView
passwordUpdateView.url=/WEB-INF/view/jsp/default/ui/passwordUpdateView.jsp
New
Bean
SWF-specific
Spring
bean
type
Extends
org.springframework.webflow.action.AbstractAction
Access
to
the
flow
scope
object
also
accessible
in
the
flow
definition
file
doExecute()
method
contains
business
logic
and
returns
success()
or
error()
Event
types
Returned
Event
types
are
evaluated
in
the
flow
definition
file
.
and
to
me
sixty
seconds
when
he
was
on
the
project
.
.
.
you
and
you
.
.
.
.
reaction
to
the
board
.
what
message
.
.
.
.
now
where
the
battle
to
.
Oh
oh
.
.
what
we're
for
that
.
.
.
.
I
just
hope
.
the
boy
.
.
.
in
a
.
.
.
but
lot
of
decisions
made
at
the
question
that
he
would
do
that
.
treat
it
.
I
look
that
up
.
that
.
Graham
.
.
I
you
make
of
a
chance
to
move
to
expand
on
that
Deliver
.
um
.
my
speed
UI
with
enough
don't
.
.
part
of
this
thing
and
recording
me
OK
are
we
have
some
technical
difficulties
with
a
slew
the
upload
is
for
a
slight
delay
.
on
the
presentation
may
have
of
someone
.
Ms
Levy
title
because
this
is
not
on
Spring
Web
Flow
.
this
is
just
focused
on
the
using
.
what's
brand
Workflow
is
good
for
.
with
regards
to
CAS
.
Tom
did
the
idea
will
.
specifically
focused
on
the
Fox
backed
it
with
this
approach
.
you
don't
have
to
.
MODIFIER
I
a
lot
of
things
in
the
CAS
to
put
this
on
the
extent
that
I
with
all
war
.
how
it
does
because
it
has
been
designed
to
have
these
expansion
points
and
the
Continue
ticket
into
the
.
.
with
Flow
.
so
em
.
just
to
go
or
what
will
be
talking
about
that
a
mandatory
slide
now
but
just
in
case
if
you
don't
like
what
I'm
talking
about
two
you
will
still
have
a
chance
to
switch
to
become
presentation
on
.
at
twelve
Overview
What
doing
how
they're
with
Spring
Web
Flow
.
this
is
going
to
be
very
quick
because
if
you
will
see
on
the
other
slide
on
of
the
Spring
Web
Flow
.
expert
on
I
happen
to
know
what
you're
that
but
you
know
expertise
that
claimed
here
.
on
the
and
then
will
do
Update
quick
overview
all
photo
has
the
turbines
over
on
it
you
know
I
could
probably
plugins
that
the
fight
that
you'll
portal
now
uses
Spring
Web
Flow
tool
.
and
so
if
you
learn
something
which
as
you
may
be
the
real
play
those
tasks
are
with
you'll
portal
to
happen
to
use
that
though
.
and
you
never
know
.
on
.
will
be
Adding
to
the
CAS
that
Web
Flow
.
again
trying
to
be
careful
not
to
mess
up
hope
as
Works
.
and
to
that
that's
important
because
the
has
actually
enforces
Some
all
the
security
at
by
performing
some
tests
that
would
into
Web
Flow
.
I'm
.
will
the
.
and
as
you
can
see
there
the
key
here
Adding
Adding
Adding
where
Adding
and
no
motive
font
and
that's
the
of
the
key
theme
to
to
take
away
from
from
here
.
Doug
by
adding
onto
CAS
is
where
we
do
sing
though
.
notifications
to
the
need
to
be
made
at
all
how
you
look
up
to
one
File
call
to
we
always
have
to
mortar
fire
configuration
file
or
to
with
has
.
so
it
was
about
staying
but
that
for
you
will
.
I
will
strongly
advocate
against
.
the
key
to
this
cause
find
Java
code
and
notifying
.
Kate
let's
talk
maintain
its
core
has
Code
.
as
he
is
a
well
equipped
to
do
.
but
the
if
you
want
to
of
Model
something
up
his
Code
.
a
copy
of
Wyoming's
but
to
stay
away
from
his
because
then
you
key
decides
to
make
his
Code
even
better
.
you
have
to
Some
Hobart
when
those
so
.
Anyware
Extension
versus
with
the
case
Michael
.
and
to
let
it
based
on
some
war
.
I
have
actually
done
.
he
would
like
to
bend
to
embarrass
myself
and
there's
still
you
are
the
more
that
will
inevitably
fail
.
it
will
go
.
I'm
hoping
that
Flow
.
it
in
the
U
.
it
will
not
use
a
real
Password
Update
publication
.
but
they
will
have
to
change
the
parts
words
to
actually
to
get
the
last
basically
the
example
that
will
give
is
that
a
casual
to
take
the
two
parts
with
has
expired
.
and
it's
will
been
Redirect
to
the
flow
about
the
case
and
instead
O
from
there
.
dissing
al
to
service
the
kid
in
of
all
we
knew
two
of
two
authentic
eight
or
just
basically
saying
that
the
petition
filed
.
it
will
instead
.
it's
and
you
go
Password
change
place
and
then
when
you
are
satisfied
that
changed
when
the
the
US
would
have
been
updated
and
has
will
continue
working
as
before
.
so
.
hear
what
Is
Spring
Web
Flow
com
.
org
is
the
disclaimers
right
the
effect
of
what
this
up
.
.
I
am
not
an
expert
on
Spring
Web
Flow
and
seventy
four
on
in
the
of
.
the
.
will
it
work
.
.
so
for
those
of
you
who
may
not
have
a
target
or
Use
Spring
Web
Flow
.
I
personally
would
compare
it
to
something
that
.
well
it
may
not
mean
of
the
other
person
but
this
time
it
of
business
.
prosecutors
accused
Language
know
perhaps
one
Flow
.
and
there
are
some
standards
behind
that
.
did
you
get
to
describe
the
holdup
with
the
central
fact
of
the
side
older
Code
itself
.
on
.
people
trace
to
do
this
.
and
still
do
the
various
with
the
Workflow
standards
on
.
did
you
keep
it
code
to
keep
the
business
logic
doing
what
it
knows
best
how
to
do
.
but
the
Powell
view
transitioned
from
state
to
another
topic
how
you
make
some
decisions
.
perhaps
the
long
use
of
federal
the
core
business
logical
view
Code
and
this
is
what
the
Spring
Web
Flow
his
is
good
for
for
Web
based
the
name
implies
up
with
these
.
on
.
so
if
you're
familiar
with
says
Spring
.
with
MVC
which
may
have
come
up
in
the
prior
for
a
presentation
of
it
.
Does
Complements
.
of
the
.
Maher
All
Duke
on
throw
.
in
addition
to
the
break
though
that
the
ball
over
the
so
called
science
.
you
can
actually
up
Kong
.
comptroller
program
.
the
transition
so
go
over
the
states
.
it
of
your
application
.
on
.
he
on
.
there
are
these
the
very
finite
the
cause
of
so
for
action
state
decision
state
throughout
their
view
in
this
thing
up
.
in
the
awareness
will
definition
you
describe
it
.
the
car
.
the
initial
state
.
and
then
based
on
some
conditions
on
the
petition
can
determine
out
which
state
that
it's
currently
and
this
allows
you
are
publication
Light
has
specifically
and
as
the
this
way
.
to
be
virtually
statements
that
it
doesn't
somehow
associate
users
browse
or
search
term
with
with
where
it
gets
with
end
of
the
low
from
processing
but
based
on
the
request
coming
in
from
the
brawler
.
it
would
be
helpful
for
SWF
test
can
determine
at
what
has
what
has
happened
which
state
is
up
in
the
peace
process
happens
to
be
.
and
then
it
stays
in
time
to
send
within
Disclaimer
request
for
example
to
the
request
team
came
in
with
the
credentials
.
it
Web
Flow
can
perform
up
convocation
by
directing
the
flow
somewhere
and
then
depending
on
Go
result
of
the
present
the
case
and
can
you
to
paint
the
.
plug
in
your
password
again
to
the
screen
or
the
Redirect
to
but
soon
to
a
to
another
.
UPMC's
publication
upon
successful
open
kitchen
.
so
what
that
means
is
that
that
you
could
have
a
few
steps
within
a
single
http
requests
.
Ferraro
do
you
can
transition
to
a
few
states
that
will
.
now
their
eyes
off
right
now
.
release
version
of
has
there
still
uses
Spring
Web
Flow
.
version
one
.
it's
note
of
that
B
Daubach
.
change
to
version
two
.
because
the
webflow
business
impl
has
this
.
this
long
.
.
and
created
to
make
things
easier
to
Nexium
of
leader
tool
that
comes
with
the
Spring
Web
Flow
version
tool
which
has
been
around
for
awhile
so
that
the
question
may
come
up
event
for
him
bring
it
up
.
but
two
very
if
you
wanted
.
if
you
had
a
motive
slide
with
Flow
up
Wiki
said
Like
has
and
to
are
you
window
from
a
near
with
hope
to
bring
enough
to
present
who
are
maybe
just
to
will
tell
.
I
am
told
that
this
tool
works
of
the
box
almost
a
hundred
percent
of
the
time
.
it
starts
as
the
third
when
he
was
developing
Version
three
four
as
the
prune
these
the
alf
has
that
the
is
now
using
.
was
it
the
viewer
Version
two
.
he
might
know
reported
because
the
file
is
not
a
big
so
he
has
that
.
.
anyway
.
I
tested
upgraded
and
fiftieth
of
totally
violent
fall
about
the
shouldn't
work
.
they
didn't
wait
but
for
a
to
have
three
four
of
the
prime
.
.
now
.
.
yes
.
I
know
what
they
say
flow
from
that
to
give
so
the
credit
to
Couple
based
government
.
but
to
be
a
one
to
signify
to
Spring
Web
Flow
.
he
is
so
.
no
QB
Committee
driven
and
the
poll
type
of
standard
or
or
it
that's
why
they're
Workflow
.
standards
if
taken
for
ever
to
get
standardized
and
probably
still
nobody
.
accepted
.
because
two
of
the
committees
though
did
not
ever
agree
on
standards
.
now
this
was
a
project
that
was
put
to
do
with
it
Couple
back
.
and
they
get
the
full
credit
for
Spring
Web
Flow
.
.
John
Marino
.
he
knows
of
the
bodies
.
.
.
how
Does
CAS
Use
Spring
Web
Flow
of
a
.
who
is
the
first
time
presenting
on
this
topic
so
I
apologize
if
I'm
a
little
bit
less
so
.
calls
to
did
that
I
did
yesterday
.
.
.
I
did
say
I'm
not
the
MC
for
No
.
it
the
viewer
.
I'm
so
that
bit
of
a
mention
in
this
really
coming
into
the
world
it
with
flow
definition
has
or
what
Flow
.
we'll
check
it
initial
steps
of
initial
state
had
them
in
order
to
determine
what
state
this
particular
uses
them
.
it
will
start
by
taking
with
enough
but
the
kid
that
didn't
because
It's
are
presented
.
if
you're
familiar
with
Hasbro
call
it
the
kidnapping
ticket
difficulty
that
is
passed
by
the
browser
to
CAS
and
to
as
only
that
the
It's
about
the
kid
is
not
shared
within
the
the
publication
event
.
based
on
the
fight
that
that
the
dividend
thing
to
get
the
Does
this
has
been
determined
whether
or
not
you
have
already
successfully
moved
on
.
on
and
to
condemn
make
a
decision
on
whether
or
not
to
display
the
Look
in
scoring
.
on
.
yes
that
was
up
out
here
service
equals
big
and
this
is
about
the
pope
a
book
or
as
part
of
all
bought
tickets
during
the
premiere
like
that
been
that
means
that
the
ground
Authentication
was
a
request
.
and
to
be
Use
it
or
was
requested
that
we
have
petitioned
service
tickets
for
that
.
.
for
the
service
.
on
.
the
raid
.
right
so
if
it's
those
service
to
get
to
that
was
so
successful
be
generated
and
that
we
have
no
from
there
.
we're
done
with
basic
be
processing
this
individual
again
a
request
.
then
we
Redirect
the
user's
browser
tool
for
the
service
.
so
this
was
all
completed
in
the
state
of
the
same
http
requests
.
because
the
kidnapping
ticket
was
present
.
we
didn't
have
to
prompt
four
of
.
Logan
.
and
to
.
there
was
a
prime
leaders
service
equals
.
which
basically
would
request
for
Authentication
to
that
service
.
if
there
was
no
service
e
was
parameter
and
which
is
a
violent
although
we
did
case
.
Benedict
as
has
to
say
um
univ
success
when
the
bell
because
it
doesn't
know
where
to
send
you
it
doesn't
have
generated
service
picture
but
it
has
some
hope
of
the
disease
TGT
requests
.
so
it
will
just
say
univ
successfully
moved
on
and
that
ends
BO
.
the
flow
.
so
this
one
bit
present
one
of
the
end
state
or
to
the
bullpen
states
and
in
the
Web
Flow
.
which
would
be
basically
that
you
all
the
the
generic
.
Moby
successful
.
on
message
.
and
then
the
webflow
also
allows
you
to
set
up
a
somewhat
more
generate
error
handling
situations
.
if
you
eight
twelve
the
Process
tangle
with
flu
and
ten
build
exception
of
course
for
example
I've
been
you
can
set
up
criteria
for
how
to
handle
them
.
and
the
with
all
definition
file
.
the
company
.
continuing
a
vote
no
cut
is
uses
the
statement
late
Sunday
November
of
the
pope
about
.
.
.
I
have
to
the
repeat
with
of
yesterday
that
it
did
.
Oh
well
Palm
.
the
change
in
CAS
community
of
occured
to
wear
out
all
these
new
features
like
Beltran
all
for
new
version
of
Web
Flow
another
option
off
some
old
who
and
many
many
other
.
.
it
as
features
were
considered
Version
four
.
brain
you'll
version
was
going
to
be
rewritten
and
then
delivered
an
so
that
this
was
seen
as
a
such
a
distant
future
time
that
the
it
has
Steering
Committee
decided
tool
top
and
up
into
bits
and
pieces
and
then
announce
Version
three
four
three
five
.
and
so
on
and
so
forth
.
where
are
these
smaller
improvements
will
be
available
.
as
needed
better
stop
it
.
most
requested
features
will
be
made
available
solar
with
it
that
way
.
if
it's
you
cannot
start
but
the
people
if
us
.
if
you
are
to
deliver
the
big
bang
because
for
a
version
that
was
the
prevailing
Model
and
say
I
year
ago
.
it
held
much
longer
do
you
think
you
get
Schwartz
before
releasing
.
.
.
.
but
they
.
but
anyway
so
so
we're
just
looking
a
boat
to
to
do
with
a
welcome
thing
that's
happened
to
Spring
Web
Flow
tool
.
it
now
Use
the
the
imminently
going
to
be
available
in
him
.
CAS
three
four
.
although
for
for
you
guys
in
implementing
as
the
scrubbing
of
the
accused
thing
but
that
some
people
may
question
whether
the
white
wedding
war
we
still
using
Version
one
.
.
and
Go
per
cent
to
all
of
you
know
available
for
two
years
or
some
plan
to
.
.
.
they
went
how
Does
your
notice
.
.
Does
your
O
is
for
ago
.
it
has
server
.
roadmap
.
a
variety
two
.
right
this
is
that
you're
probably
going
to
part
time
reading
this
and
this
is
just
as
an
example
but
that
these
are
examples
of
some
all
the
states
.
Dr
.
.
Can't
may
be
a
.
the
view
that
of
initial
Flow
said
in
Set
up
for
example
that
Edmondson
.
on
and
then
of
it
.
basically
transitionsWhat
the
kidnapping
think
it
exists
Check
doesn't
mention
had
been
here
is
though
that
think
that
basically
built
for
ID
all
stick
Event
the
tickets
are
being
available
within
the
so
called
no
flowScope
.
Path
.
if
it
is
that
it
means
that
it
came
in
with
the
request
.
Pulte
that
therefore
that
we
proceed
through
the
service
to
remember
I
mentioned
earlier
.
if
there
is
a
service
from
your
we
generate
top
service
picture
.
and
the
.
he
chose
not
to
move
on
.
with
Ryan
Rupe
on
.
and
that
this
one
here
of
you
inform
us
the
name
implies
.
we
are
right
about
that
state
.
if
it
is
the
mutant
who
are
trained
to
look
in
screen
because
the
unit
as
a
love
gone
.
Hopkins
the
odious
to
you
can
read
that
but
it
would
help
all
open
source
tools
.
Buchanan
.
I'm
actually
you
know
it
impress
your
boss
.
the
and
say
well
you
know
that
the
I'm
going
Workflow
stuff
here
in
end
to
it
.
I
can
arrange
these
icons
but
basically
.
open
source
known
Spring
Lady
plugins
.
will
allow
you
to
edit
view
of
invisible
ice
.
the
entire
with
were
or
where
Flow
.
it's
probably
easier
to
.
C
.
the
actual
screen
.
.
been
.
MC
to
the
open
the
right
thing
.
so
this
is
right
of
.
this
is
the
clips
will
with
the
Spring
.
I
eighteen
.
by
then
.
ball
graphical
that
there
.
results
will
be
justice
electable
but
the
nice
though
.
well
be
able
to
as
the
men
and
Now
.
well
.
they
wasted
the
to
my
spot
ical
flight
from
beneath
the
get
go
off
and
designed
it
and
it's
basically
that
same
file
that
the
.
it
is
Wittman
XML
and
most
of
with
this
.
it's
fine
least
openly
planning
so
.
the
Gers
.
.
.
so
would
be
considered
can
stop
you
think
it
would
this
be
considered
the
top
of
the
sample
.
Web
Flow
.
I
thing
it
would
.
.
well
you
if
only
because
of
the
home
.
this
is
an
statement
.
.
or
is
statement
of
conditional
.
.
OK
.
so
it
now
in
trying
to
convince
you
were
white
This
is
a
good
way
to
expand
as
we
view
them
font
topic
.
on
.
so
unlike
eight
mentioned
earlier
during
to
you
Daryn
.
he's
Discrete
it
does
gives
you
know
portlet
you
throughout
the
Discrete
points
because
you
have
the
states
.
OK
so
that
if
you
look
at
that
the
frontlines
of
XML
file
that
you
use
your
of
that
state
.
instead
all
taking
this
tiny
can
pay
one
extra
time
.
and
then
to
inject
some
additional
business
logic
and
depending
on
the
outcome
of
that
.
you
can
revert
to
the
regional
Flow
.
or
you
could
dampen
sick
use
what
you
have
set
out
to
two
to
of
Add
to
that
.
on
that
the
so
.
these
points
.
well
you
could
have
.
on
slide
.
it
.
so
you
can
not
only
at
an
you'll
top
business
logic
using
the
so
called
Action
Beans
.
but
you
could
also
had
of
course
new
so
called
view
state
which
I
the
new
user
interface
that
to
Kobe
user
on
a
long
this
new
Functionality
.
and
the
.
.
but
I
will
use
the
I
will
reply
began
to
Maven
overlay
build
up
.
because
it
is
very
friendly
to
this
edit
the
faithful
for
war
.
well
when
are
you
with
that
.
so
that
.
this
may
be
somewhat
to
the
Spring
Web
Flow
see
that
one
are
specific
.
.
on
the
camp's
carpeted
in
our
budget
.
O
.
.
.
.
.
OK
.
.
.
.
yes
.
yes
.
well
.
.
this
.
good
will
but
to
sign
it
so
we
two
three
four
.
should
all
be
difficult
with
this
wonders
what
a
light
on
so
New
Bean
would
be
useful
if
you
wanted
to
introduce
New
Business
logic
on
.
Bill
easy
as
we
could
do
it
of
course
is
to
expand
this
upstart
base
class
for
all
mares
and
the
viewer
.
this
is
what
did
Beans
included
with
has
do
.
on
and
that
you
have
to
.
and
Drummondville
exit
get
mad
about
your
business
logic
map
.
and
then
.
there
are
very
handy
.
existing
met
folks
like
we
have
a
successful
return
error
.
to
signify
the
Alto
mobile
twelve
Your
Business
logic
then
goes
on
.
Dover
test
that
inside
all
the
XML
Web
Flow
definition
file
and
then
the
decision
is
made
what
to
do
after
this
impl
the
outcome
of
the
decision
is
made
within
this
business
logic
is
made
within
the
Web
Flow
the
permission
.
.
there
are
Massive
the
Los
the
bullet
.
now
in
addition
to
Adding
New
take
you
Tim
.
as
I
mentioned
at
the
UN
you'll
argue
that
an
athlete
element
in
this
case
will
be
using
a
new
view
.
on
to
present
some
other
.
user
interface
but
as
the
Recently
of
the
box
wasn't
meant
to
go
.
it's
all
in
this
example
here
.
.
a
show
of
.
in
addition
hope
something
called
Password
Update
view
.
and
third
.
as
we
mentioned
dirtier
the
example
begun
working
with
this
though
.
detection
older
fact
that
your
passport
as
Moby
up
abated
the
end
of
an
excessively
long
time
.
and
then
to
even
go
you
can
read
them
a
violent
Password
.
you
will
know
be
forced
by
CAS
to
go
change
the
parts
would
be
too
Is
.
it
just
talks
.
it's
will
not
issue
any
tickets
to
your
application
is
requesting
Authentication
until
you
satisfied
that
require
.
.
and
though
that
this
would
be
an
example
on
login
webflow
Edition
.
.
I
hope
it
though
.
make
sense
I
mean
these
are
things
No
.
everybody
is
familiar
with
but
basically
the
new
state
this
has
Password
out
.
great
and
it's
as
you
now
need
to
invoke
his
Bean
.
and
when
did
the
in
the
returns
success
.
we
switched
of
this
state
.
when
did
Bean
returns
error
.
we
switched
to
based
on
service
to
is
another
on
the
auction
.
state
and
Widget
performs
the
additional
actions
and
that's
thrown
from
the
original
Web
Flow
been
mentioned
.
Hmmm
.
on
the
other
hand
view
Password
Update
is
is
on
end
state
that
ends
the
flow
.
and
service
.
we
to
play
this
you
the
address
.
does
Rome
.
change
was
.
and
at
the
time
.
the
Huskies
a
statement
.
that's
where
Refers
with
the
US
and
state
because
CAS
uses
control
over
it
.
that
session
from
that
point
only
the
the
need
to
try
to
either
teach
us
.
that's
when
you
can
think
of
it
.
right
so
that
that
that
is
going
to
be
the
embarrassing
DemoNew
Longwood
right
now
.
I
fear
this
to
that
myself
but
.
doing
it
in
from
of
people
.
so
I
need
to
build
it
and
also
you'll
on
our
land
holders
product
if
you
can
.
if
you
can
see
this
from
.
we
don't
need
to
speed
is
four
to
four
right
now
and
we're
going
to
close
the
thing
and
third
with
a
minimum
you
will
actually
have
to
redeploy
.
but
the
best
a
required
step
.
M
.
so
this
the
wrong
project
.
.
is
that
the
of
DemoNew
.
so
Using
eclipse
and
Maven
to
IDM
.
I'm
going
to
rebuild
this
part
this
from
scratch
.
first
body
.
doing
Maven
clean
.
.
how
Does
the
recording
software
that's
making
that
point
.
Flickr
or
what
.
unusual
.
and
then
you
will
blue
.
.
they've
infected
.
.
connecting
Scott
told
me
that
the
Is
of
Maven
overlay
.
com
Themes
presentation
tomorrow
.
or
.
Michael
Hughes
.
was
that
was
the
tube
last
of
the
during
the
Korean
Prime
presentation
here
.
.
I
uploaded
scope
.
I'm
at
.
and
so
.
.
I'll
.
.
I
was
trying
to
fill
the
moment
of
silence
will
my
computer
is
working
really
hard
.
.
.
the
.
but
basically
this
.
Myers
We'll
talk
about
it
now
.
so
I
have
a
single
.
.
the
iPhone
file
here
.
into
I
only
have
the
files
that
Web
Adding
form
we
are
fighting
unit
as
a
so
.
at
and
to
do
live
under
sorts
.
source
Maine
.
then
I
have
a
jar
file
that
contains
the
New
Bean
good
at
it
so
that
that's
basically
I
package
qualified
.
Tom
.
directory
structure
.
here's
the
Bean
.
that
I
have
had
to
create
.
it
does
some
set
up
and
the
here's
the
deal
easy
to
platform
.
that
I
have
to
will
be
a
sleeper
right
.
and
that
the
returns
that
different
in
all
success
or
stuff
like
that
.
so
it
invokes
its
own
private
method
is
Password
Update
needed
.
and
if
so
it
does
some
things
his
way
Ant
under
way
since
returns
success
.
because
success
means
no
plus
what
the
big
businessman
center
.
on
.
now
the
way
that
method
works
well
.
he
is
close
with
of
duty
.
.
.
we
would
is
that
.
who
do
Financial
.
whoops
.
well
what
they
click
on
the
wrong
one
.
.
in
.
what
is
basically
perform
some
of
the
quake
.
I
have
a
copy
also
bundled
up
running
here
.
that
implements
the
.
recall
this
.
.
passwords
something
Password
policy
that's
right
.
there
is
a
standards
quote
unquote
um
held
up
implementation
both
Password
policy
enforcement
.
and
you
can
control
.
Hall
.
longer
about
it
I
will
foundation
be
replaced
Carmody
to
.
plus
where's
the
system
has
to
remember
and
retain
of
so
that
you
don't
change
it
into
the
same
password
hold
of
.
how
open
are
you
permitted
to
change
that
the
switch
that
you
don't
change
it
to
you
know
five
times
to
defeat
history
to
go
back
to
possible
.
plus
word
.
and
so
and
so
forth
so
that
I
have
implement
this
policy
but
it's
not
very
strict
with
him
like
this
in
my
life
.
but
NBC
using
attributes
of
that
to
drive
this
does
business
logic
you
.
still
stood
my
build
up
.
and
that's
running
so
that
their
phones
that
square
e
.
and
it
looks
for
attribute
the
basic
things
debate
over
the
last
bus
would
change
Andy's
bean
itself
is
going
figures
do
with
the
property
.
and
.
I
don't
remember
which
one
influence
but
it's
basically
.
.
Diego
at
well
to
make
it
easier
for
testing
.
I
specified
in
the
number
of
seconds
from
the
.
how
long
the
plus
with
the
should
remain
silent
.
.
I
waste
of
it
you
know
we
had
it
been
days
or
something
more
logical
that
it
would
be
difficult
for
me
to
this
but
this
is
a
soap
that
the
training
table
from
now
.
and
example
.
of
.
this
is
insisting
on
Billy
files
.
been
on
break
money
.
I
haven't
been
touched
.
.
broken
in
and
connected
.
.
.
what
do
you
know
yes
we're
having
right
this
.
and
the
cable
plug
them
.
.
.
.
there
we
go
to
.
emergency
but
the
plan
.
.
.
first
Jiscmail
Menon
with
the
.
yes
the
UN
Clinic
that
true
blue
.
Redisch
here
.
impl
of
Florida
.
.
.
been
.
so
the
local
why
it's
it's
no
fourteen
for
me
.
you
may
live
mileage
will
vary
.
.
use
my
phone
.
hopefully
the
alert
.
well
this
morning
.
.
.
mom
mon
Finland
.
.
stalking
.
doubt
it
.
so
maybe
that
will
revive
Maven
.
.
.
.
the
thing
I
have
a
three
G
connection
to
the
allegiance
with
the
co-op
.
well
hello
there
Donna
Event
.
this
.
and
to
still
be
could
there
have
on
him
at
election
.
I
couldn't
vote
to
Maven
is
offline
mode
.
it
to
I
suppose
.
OK
so
we
have
no
built
.
has
war
file
.
and
they
just
might
tomcat
server
.
and
to
the
application
.
Ducks
will
attempt
to
cool
of
long
tool
will
be
you'll
portal
so
I
have
to
stay
sealed
portal
database
.
.
and
you
Does
it
.
.
database
about
.
and
don't
cut
.
.
timing
.
well
coming
up
Anyware
.
in
the
meantime
though
find
the
the
race
we
would
to
deposit
.
tomcat
who
.
I'm
sorry
has
to
.
even
after
the
storm
I
modified
version
right
.
will
that
don't
come
up
.
actually
I'm
going
to
also
very
afraid
.
the
bill
works
.
.
.
.
.
.
so
you
portal
.
.
I
do
use
the
cell
Science
certificate
on
my
vocal
tone
that
so
.
I
will
have
to
go
.
the
to
accept
it
.
.
.
you
can
see
that
there's
two
messages
coming
out
from
tomcat
starting
on
.
it's
not
great
on
cots
being
slower
necessary
my
computer
the
snow
but
to
deal
portal
startup
is
quite
significant
because
it
starts
the
impl
of
the
caisson
and
the
.
a
whole
slew
will
portlets
the
art
their
own
without
the
Cajuns
.
so
that
just
takes
time
.
up
front
bonus
nationalization
.
but
then
hopefully
.
respectable
performance
from
that
point
on
.
OK
so
we're
going
to
continue
this
is
the
warning
I
mentioned
.
so
find
certificate
dismissal
.
.
.
.
they
should
use
to
portal
.
and
I
tried
that
.
this
is
not
click
as
the
right
to
build
.
I
try
to
have
gone
just
to
verify
that
in
the
works
.
Hoops
.
and
for
.
its
word
.
and
.
from
quicken
up
swimming
notice
authentication
No
I
was
late
.
I'm
so
so
what's
my
.
me
and
plan
out
.
Mubarak
to
you
portal
.
and
now
.
here
we
have
this
brand
new
war
file
that
was
just
created
.
with
my
mortified
with
Flow
.
and
development
in
to
the
appropriate
location
.
Swoopes
.
.
.
it's
been
the
story
that
.
and
to
you'll
notice
that
the
coaches
know
redeploying
has
.
it's
usually
a
pretty
quick
Corp
.
done
.
so
.
now
when
I
try
to
again
with
tens
.
.
scientists
version
.
and
has
verified
that
it
works
.
now
my
team
and
account
and
held
up
does
not
have
Password
policy
enforcement
.
so
that
even
if
like
I
want
a
slap
us
with
a
four
over
.
I'll
be
able
to
to
the
love
them
successfully
.
.
so
I
did
.
it's
a
good
thing
.
I
didn't
break
it
.
and
now
I'll
try
to
move
them
.
with
a
metallic
the
dust
of
the
Password
of
the
policy
of
force
month
.
demo
.
.
and
they
get
the
Redirect
of
two
parts
what
the
big
require
.
and
then
if
I
click
here
.
that
invokes
my
password
change
up
the
case
and
this
is
all
made
up
his
is
the
mail
.
but
I'm
using
this
for
this
race
.
now
to
get
me
out
of
this
situation
I
do
we
have
to
perform
what
to
write
head
but
I
didn't
I
didn't
have
R
and
B
then
B
Password
trained
application
they
could
quickly
without
for
the
purpose
of
his
demo
.
so
instead
.
it
will
open
my
build
up
and
get
a
new
tool
.
which
is
basically
Joe
.
no
the
two
.
Ametys
No
to
explore
.
they
love
two
to
three
open
source
of
build
up
.
Quentin
with
Wiki
stance
to
my
medication
and
all
and
all
that
neat
stuff
that
typical
.
in
.
so
you're
the
most
loaded
onto
my
aide
held
up
at
used
by
the
way
we
did
the
folds
Password
the
big
policy
use
the
word
.
there
.
none
of
restrictive
but
that
this
probably
.
I'm
not
enough
time
to
go
through
all
the
details
of
anyone
actually
you
more
of
the
Web
Flow
and
I'm
the
code
rather
than
wait
didn't
know
that
.
so
that
once
a
sibling
but
here
I'm
now
going
to
go
to
the
demo
account
.
and
Hughes
use
their
parts
word
.
I'm
going
to
change
the
password
.
those
numbers
for
to
us
what
responses
Ametys
teasing
at
the
diverse
and
parsley
.
but
the
act
also
having
change
the
parts
to
it
.
and
then
submitting
.
will
every
step
.
the
age
of
the
possibly
attribute
that
this
user
has
and
identify
can
see
this
.
this
is
one
of
those
to
Does
that
doesn't
come
out
with
him
.
as
a
Explorer
by
the
fall
.
and
I
don't
know
states
were
well
enough
to
force
it
.
it
to
do
that
but
the
this
is
a
goal
.
black
who
.
you'll
portal
.
.
Stein
an
.
and
here
I
am
a
bomb
as
demo
.
I'd
even
have
to
are
my
in
my
is
in
the
map
us
with
and
you
know
why
.
the
loose
here
in
the
singles
final
session
from
having
lived
on
Duke
has
.
two
.
it
attempts
to
hold
onto
a
tool
to
for
you
all
.
this
is
a
feature
that
if
you
will
of
this
implementation
.
on
the
and
this
was
designed
to
alter
it
this
way
because
we
wanted
to
be
even
more
clever
and
too
one
of
scoop
has
been
able
to
passwords
change
up
with
this
in
itself
.
so
that
the
user
would
have
to
plug
in
their
origin
all
costs
would
be
just
what
did
the
OSS
which
Improved
the
author
of
Paper
system
right
.
so
although
the
for
change
up
with
these
into
one
of
the
market
up
one
the
prior
screen
only
had
the
new
password
.
an
oil
only
shook
have
you
with
the
new
buzzword
and
the
verification
and
that's
the
.
and
that
was
so
that
are
IT
for
design
and
then
basically
the
other
thing
it
was
cleverly
do
you
see
the
up
and
the
devil
regional
URL
all
the
services
of
to
request
that
the
convocation
.
the
director
box
after
successful
parts
which
means
so
that
the
and
waiting
that
I
have
to
go
by
going
to
history
and
changing
where
I
wanted
to
go
back
wouldn't
you
bet
happen
because
the
PA
Sport
and
up
the
case
and
if
it's
smart
enough
.
it
would
No
.
well
you
really
meant
to
built
we'll
portal
so
I
will
now
read
Director
two
Who
.
so
you
couldn't
do
this
and
do
we
have
done
that
the
.
with
with
our
clients
will
work
with
but
to
my
market
cannot
do
that
.
I
know
that
I
talked
to
both
.
and
.
and
so
it
in
April
to
vote
the
showing
you
the
Web
Flow
was
so
that
this
was
the
old
New
Bean
.
.
and
no
this
is
the
.
Maven
overlay
part
.
and
it
source
Maine
a
way
about
.
so
first
let's
take
a
look
at
Logan
with
will
deploy
a
config
complex
.
well
look
and
the
two
but
that
unloaded
Web
Flow
.
.
MC
and
maximize
this
Mimi
be
able
to
Shel
you
with
the
new
state
was
introduced
.
png
was
this
where
.
service
to
service
.
no
it's
actually
.
but
for
that
.
so
here's
the
news
state
.
but
then
try
to
find
ways
and
Flow
.
where's
transitioned
to
.
well
SEC
.
is
that
.
so
here
to
its
source
and
the
Getty
grant
the
ticket
.
on
the
mobile
standard
.
State
all
work
as
a
Web
Flow
.
instead
of
transitioning
tool
that
is
service
check
.
people
know
transitioned
to
this
new
inject
that
state
.
so
yes
there
is
a
what
if
the
patient
of
his
file
.
it's
a
very
minimal
on
with
looking
probably
got
some
lines
up
most
.
most
of
them
are
auditions
.
so
if
you're
going
Managing
using
as
a
DNR
something
like
this
you
might
get
ical
flicked
on
this
deadline
.
but
it's
very
easy
to
do
to
fix
.
and
we
transition
to
Password
Update
state
so
this
is
the
state
that
invokes
his
Bean
.
and
then
.
he
did
invoke
the
new
view
state
visit
to
Password
Update
or
to
go
was
about
Gore
is
going
.
.
it's
scheduled
State
of
service
.
well
if
you
Password
Update
.
that's
the
new
end
state
.
that
e
.
and
use
someone
.
well
it
is
very
simple
.
it
basically
goes
to
the
press
with
the
big
view
.
I
then
have
us
slide
four
of
how
this
was
done
.
.
no
actually
I
do
.
but
basically
.
and
do
less
to
see
that
the
focus
Use
the
properties
is
the
father
this
that
defines
over
the
spring
MVC
use
.
for
four
pad
itself
.
and
I
basically
inject
the
death
new
definition
of
of
you
here
.
no
come
.
you
install
it
on
the
scoring
.
that
was
the
place
that
said
that
there
are
you
must
know
trying
to
Password
click
here
to
vote
and
two
partial
remember
that
.
so
that's
file
gets
to
a
new
at
it
.
.
if
you'll
File
.
and
it
has
to
be
in
the
weather
.
normally
these
things
reside
in
as
.
so
this
is
the
price
would
be
view
.
.
present
.
it's
also
Internationalized
it
uses
Massive
definition
isn't
all
that
stuff
so
that
this
is
way
beyond
the
scope
of
what
we
intend
to
go
to
both
here
.
but
basically
.
.
that
it
provides
this
link
here
to
the
parts
which
range
up
the
case
and
I'm
on
with
it
.
.
that's
the
view
.
that
was
with
was
that
it
.
I'm
just
for
the
sake
of
completeness
my
new
message
definition
zone
here
.
that's
because
as
the
property
.
Internationalized
up
the
case
any
of
that
style
Use
Olympics
mastered
this
and
make
them
.
Language
specific
.
I
do
not
have
any
other
alternative
Line
which
implementation
so
this
.
um
.
and
is
the
anything
goes
today
.
haven't
talked
to
though
.
.
so
I
miss
so
.
there
are
questions
about
the
battle
.
I
will
ask
for
any
type
of
questions
because
they
believe
that
my
.
that
slide
.
.
.
.
.
this
is
somewhat
contrite
.
you
probably
so
but
in
the
idea
.
I
can
certainly
do
it
that
I
I
could
go
probably
them
there
because
to
make
a
better
suggestion
.
Tom
.
although
that
will
put
me
on
the
move
to
Builder
the
dough
but
the
and
the
distance
This
presentation
was
was
inspired
by
real
project
that
the
warehouse
to
to
do
but
try
.
and
the
car
and
actually
didn't
want
us
to
the
parts
would
change
.
but
it
with
the
US
Postal
blue
was
checked
with
her
in
asked
this
students
looking
on
the
ticket
off
Longo
Internet
acceptable
use
policy
for
debts
amassed
.
so
the
business
logic
was
effective
the
identical
right
we
we
came
in
when
injected
a
new
state
.
we'd
and
check
of
date
.
over
the
last
.
profile
of
date
.
and
two
if
that
Update
has
not
been
done
in
the
prequel
to
get
number
of
base
we
were
directed
them
to
this
new
state
.
this
new
state
created
a
link
that
to
them
to
go
.
O
.
profile
of
the
accommodation
which
in
itself
was
not
a
fight
.
Aiden
so
you
and
that's
my
example
but
that
is
actually
Business
logic
in
my
team
.
then
it's
.
generate
some
service
ticket
specifically
forgot
publication
in
the
application
on
the
it
depends
a
to
the
end
of
that
URL
.
so
when
you
click
that
your
a
OE
will
successfully
.
the
key
to
that
obligation
because
it
is
has
its
own
service
with
that
.
it
will
then
be
able
to
vie
with
a
belt
with
has
because
Dark
portal
status
was
not
the
motive
fight
.
in
a
pool
of
the
user
along
to
this
profile
of
the
cup
the
case
and
at
and
allow
them
to
make
the
change
.
moreover
the
URL
was
also
cleverly
enhance
we'll
have
our
on
another
.
Goodwin
name
of
the
argument
was
parameter
.
the
and
build
up
your
elbow
with
the
parameter
and
by
the
way
when
you're
gonna
returned
to
this
application
which
was
always
only
requested
publication
by
the
U
.
on
and
so
this
was
done
with
No
.
with
Finley
University
only
in
this
legal
family
though
.
I'm
.
two
people
.
the
bottom
of
the
Ohio
.
it
in
anyway
that
and
to
Tufte
it
.
based
on
the
work
with
it
four
to
the
actions
of
all
this
looks
pretty
neat
so
we
could
add
our
own
house
would
and
they
did
the
press
which
end
up
with
these
themselves
.
I'm
sure
it
works
because
they
voted
.
but
I
ended
up
going
to
write
my
own
.
to
them
and
that
because
someone
call
Mom
.
if
I
knew
Path
to
.
.
the
deal
.
will
that
slide
up
into
action
.
yes
the
implementation
of
an
interesting
idea
behind
it
is
that
.
he
.
yes
it
implement
some
athletes
but
there
is
there
were
and
even
the
threat
based
class
.
and
I
think
my
slide
here
said
that
the
kit
.
Strike
action
.
and
that
you
mean
basically
has
to
implement
.
so
expect
.
and
play
starts
as
the
this
is
so
strained
Does
this
base
west
of
the
same
him
.
Spring
Web
Flow
two
.
.
going
to
happen
Riverside
is
going
to
completely
best
only
a
threat
.
Michael
.
.
.
.
the
other
questions
.
the
body
hundred
.
.
are
you
thinking
is
based
.
better
to
deliver
presentations
before
lunch
down
is
the
right
up
the
by
one
estimate
.
but
that
that
Thank
you
.
the
the
the
the
the
.
.
he
.
.
.
.
.
.
yes
.
.
.