> I guess I am still unclear as to the lifecycle of a persistent vs non
> persistent property. Could you help me understand
> the lifecycle of a NON Persistent property? Assume the page has a form.

I would say that its lifecycle is request, ie at the end of each HTTP
request page is inserted back to page pool and all properties are
cleared to their default values (usualy null). So, at the beginning of
another request (possibly from another user), page is taken from the
pool with all non-persistent properties cleared.

Non persistent properties HELP you to rewind and render your page, ie
you may initialize them with values from database at start of request
or inside request, then use them in bindings to other components'
parameters.

Eg your "feeSchedule" gets new value upon every start of ListEdit
iteration and you may use it inside ListEdit. You MAY also use it
outside ListEdit, but in such cases it usualy has meaningless value -
either null or last value of the ListEdit iteration.

Persistent properties behave almost the same way, except they are
initialized at the beginning of request from HTTP session and stored
back at the end. To be precise, they are stored back NOT at the end of
request, but at the end of 'active' phase of request. That is when you
have done all changes to database, business or session state and ready
to generate and send answer to the client (render your page). Tapestry
prohibits you to change any persistent (ie HTTP session) state inside
that render phase, because its meant to generate and send answer back
to client, not to do any actions that affect application state. (I
suppose its tapestry feature to avoid bugs).

Oleg

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to