hi geoff,

i was thinking of implementing such a "conversation" or "flow"
library in T5 myself and did some experiments.... 

I think a possible way of implementing such a feature is to define a 
"conversation" persistence strategy. Furthermore you need to enode 
the "conversation" id into the url (or create a hidden input field like 
seam or
spring webflow).  this can be done using the LinkFactory.  on a 
"conversation" 
request a dispatcher will analyse the id and create a thread scoped 
service 
that will pull out the conversation specific data from the httpsession.

g,
kris




Geoff Callender <[EMAIL PROTECTED]> 
28.11.2007 13:06
Bitte antworten an
"Tapestry users" <users@tapestry.apache.org>


An
Tapestry users <users@tapestry.apache.org>
Kopie

Thema
T5: Is Persist("conversation") planned?  Please?






Hi,

T5 has done some great work in handling common web problems with its 
fresh approach to navigation, but I'm very concerned that T5 will be 
swept aside by developers demanding frameworks that, at last, 
completely deal with the Back button, double-submit, etc, etc.  It's 
ridiculous that we all keep hunting around to solve these issues, and 
I reckon we'll jump at any framework that does it for us.

A classic case in point is "session" persistence.  It so nearly works, 
but in fact it's dangerous.  It doesn't even handle multiple windows 
and tabs safely (why? because they share the same HttpSession and 
therefore have concurrent access to the same "session" persisted 
objects).  Over and over again, developers have to use a lot of brain- 
power to make it safe.  Actually, I haven't seen anyone come up with a 
"cookbook" solution.

Then, along comes JBoss Seam offering a solution - "conversations".  I 
believe that Seam can tag each window and tab with its own 
conversation id and  persist its objects in the session tagged with 
conversation id.  It can even tag windows within windows, or so I 
believe.  They claim that conversations "eliminates a whole bunch of 
bugs caused by back buttons, refresh buttons, double submits, multi- 
window browsing, post then redirects, 'these all vanish when you have 
conversations'.".  (
http://www.infoq.com/news/JBoss-SEAM-1.0-Gavin-interview 
)

So, could T5 introduce Persist("conversation") or something similar, 
and take a whole class of problems away for good?  Please, please?

If T5 doesn't offer a clear solution to each web problem then I fear 
people will be drawn to frameworks that do instead.  And that would be 
a massive shame.

Regards,

Geoff


Reply via email to