Ahhh, the long running query problem.  Yes its a classic.

I agree with Michael though.  The answer to your dilemma has nothing to do
with struts, java, or anything else on the "server" side of the application
at all.  This is a limit of web technology in general.

I've written a few applications that handle similar "opportunities" (my
friendly name for problems).

In one case, the user created downloadable files that were extracted from a
DRP system (KBM on AS/400 DB2).
The challenge was how to create the file and let the user download it all
from the web.

What I ended up with was a "Crystal Reports"-like web application, where the
user used a wizard to create the initial parameters that were passed to an
asynchronous process that ran in the background and updated the db when it
was finished.  The user just had to sit back and wait for the extract to
finish.  They could refresh the page of processing jobs all they wanted, but
it wouldn't let them download it until it was finished.

You might try creating some summary tables for common "long running
queries", if you are reporting summary analysis.  This technique has helped
me eliminate the need for my "Crystal Reports"-like app on my current
project.



James Mitchell
Software Engineer
Open-Tools.org
Home Phone (770) 822-3359
Cell Phone: (678) 910-8017


-----Original Message-----
From: Michael [mailto:[EMAIL PROTECTED]]
Sent: Saturday, February 16, 2002 2:09 PM
To: Struts Users Mailing List
Subject: RE: Showing a result after a long running query


out of curiosity, how are you doing the server side transaction
asynchronously?  you can't block on the request thread, so obviously
you hurl a "prosessing page" and close the socket..
but in the back end, how is the request processed?

i just finished a credit card processor application where
i used meta-refresh in the web page with a timestamp to handle a timeout.
but in the initial request i use JMS (java message service) to queue
a request to a destinination and that request is handled my a JMS message
listener.
JMS processes the request and stores/commits the response in the target
payment record.



-----Original Message-----
From: Jim Tyrrell [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, February 13, 2002 11:25 AM
To: '[EMAIL PROTECTED]'
Subject: Showing a result after a long running query


Hello all,

I have looked at the struts docs and all over the net and I have posted to
forums at java.sun.com.

I want to show a user a page that says I am working on your problem and then
when the processing is done I will send to them/display for them the output
of the long running database query/process whatever.

Note I do not want the working in progress page to be shown again if I hit
the back button of the browser. I should just get to the form that I
inputted my parameters into to get the process rolling.

Does struts support this?
Does anyone know how to do this with some other technology?

This seems like a common problem and there should be an easy solution or at
least you would think so.

Thank You
Jim Tyrrell


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



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


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


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

Reply via email to