It's hard to tell which problem you are trying to solve through your comments.
The mention of a File upload area being a good place to have a wait indicator would be a perfect scenario for the suggestion of throwing up some sort of shared "wait" dialog via javascript. (as was outlined in more detail previously) For data intensive things with potentially many nodes there are other options. For instance, you will notice that the tacos tree demo does exactly this. It renders the page out initially and displays a wait cursor after that is completed while it fetched all of the data to display all of the tree nodes, http://opencomponentry.com:8080/tacos/ajax/TreeExample.html . I don't think you are going to find a solution that fits all scenarios. (at least not one that works well from a user/developer perspective) You may have to just treat each page on a case by case basis. Probably more work but definitely a better experience for your users. On 12/6/06, Sam Gendler <[EMAIL PROTECTED]> wrote:
I think that functions by loading the page entirely without data and then firing off an ajax request to get the data. I'm seriously considering reworkgin my pages in a manner that alows this. By default, the page renders a page that does no work, including populating models and such. The content area gets wrapped in a great big div that can be replaced by an ajax request. When the ajax request fires, I can then populate the models, knowing that a please wait dialog is visible. The trick will be in ensuring that all the models are instantiated with at least enough data to rewind correctly during the ajax request - I'm concerned that doing that will be very labour intensive and may well require lots of custom code on every page, to take into account that page's particular requirements. I'm thinking I need to get really sneaky and do something with a servlet filter, such as intercepting all incoming requests, instantiating a new Request object which tells tapestry to render a page that does nothing but display a please wait dialog before sending an ajax request with a particular identifier in it. When the filter sees that identifier, it can replace the incoming Request object with the original Request object, allowing the page to render correctly. I have no idea whether this is truly feasible, but I suspect it is the only truly viable solution that works in all cases (except file upload, I imagine, which is a shame, cause that'd be a real handy place to have a pleae wait dialog). --sam
<snipped> -- Jesse Kuhnert Tapestry/Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]