You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Mikaƫl Cluseau <nw...@nwrk.dyndns.org> on 2004/07/29 23:49:57 UTC

ActionLinks and Forms inconsitent with services

Hello,

I have a problem when making the external and action services work 
together, simply by using an ActionLink component in the external page. 
The problem is that the page cannot be rewound because the action 
service only works with the page.

I would appreciate a discution on this because I think it is a important 
problem. I explain.

As some people here know, I currently work on a generic (long) search 
displaying system. The problem is that the search results page shows 
results... and needs to be rewound to do anything with them (at least 
using Form or ActionLink components).

The current solution is to set the search persistent, just like in the 
vlib's ViewBook page, but it's not enough : if a user does a search, 
does another one and click the back button because he prefers the 
previous results, and then clicks the "One click purchase" link for the 
black 38 meters yacht, he won't buy what he thinks. Why ? because the 
framework will have the last search in session, and will rewind it to 
find the result, and will find a pink 5 meters yacht.

Secondly, I think that we don't need a session to browse and search the 
product catalog (for instance).

Thirdly, with the Service en ServiceParameters of IRequestCycle, the 
framework has everything to do the correct rewind.

To solve this issue, I think that the action service should use the 
service who rendered the page to do the actual rewind: recording the 
service and it parameters in the link is enough. But, it will involve 
changes in service API. Something like forcing service who use pages to 
use method like "usePage(IPage)", delegating all page rendering to their 
parent (the ActionService would then overide it to rewind pages).

Am I right? Will the Tapestry's merge with HiveMind will solve this? Did 
I missed a better way to solve this problem?

Comments welcome!
Mikael Cluseau.

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org