Thanks Joel, I hadn't thought of that. I will try it out.
--Katie
Joel Trunick wrote:
You don't want to create a thread to do this. Instead, put a timeout (say 3 seconds) on the interstitial page so that it auto-submits, and then check in the page submittal method whether the process has finished, and .activate(page) accordingly.
You can't redirect from the thread because the browser hasn't requested anything.
Joel
-----Original Message-----
From: Katie Macpherson [mailto:[EMAIL PROTECTED] Sent: Thursday, April 07, 2005 10:57 AM
To: Tapestry users
Subject: Loading Page to poll external service
Tapestry Users -
I am using an external service on my site that has the potential to time-out. For this reason I am using a non-blocking thread to poll the external service to see when it is complete. I would like to display a "loading" or "processing" page while the thread waits on completion of the service. For the purposes of this example I have pages *Step1Page*, *ProcessingPage *and *Step2Page. Step1Page *instatiates the thread and activates the *ProcessingPage*. *ProcessingPage *starts the thread (ProcessingPageThread), and then waits on it to finish. Once the external service has completed I have tried to use cycle.activate() and also throw new RedirectException() to go to the next page, but I keep getting this exception:
Exception in thread "ProcessingPageThread" org.apache.tapestry.ApplicationRuntimeException: Unable to instantiate component Step2Page/Page
Layout: null
at org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.ja
va:532)...
My questions would be, why am I getting this error? and Is there a better way to create a "processing" type page in Tapestry that will fully render itself, and activate the next page in the cycle when
complete?
Thanks in advance, Katie
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
