You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Luc Foisy <Lu...@technical-magic.com> on 2004/11/01 20:42:21 UTC

Response and file downloads

I am having a wee problem with using the response.
 
I have a form on a page, with a submit button to download a file. That file is being pulled from a database and pushed to the response.
The problem I am having, I just used that response to submit the page, so I am getting and IllegalStateException, even though it is still pushing the file to the browswer
I also want to be able to send a redirect after the file is downloaded (so I can refresh the page so the form submit page is regenerated, since we are using a string to determine unique submits are only coming from the pages we generated, and not the browser address bar)
 
Can we get a new response from the session variable (the one available to jsp writing) to send the file, then get another new response to perform a redirect....
Basically I want to be able to do something like
 
the form submits, and passes to the applications perform methods through the jsp catching the submit
response = new Response
response.sendFile
response = new Response
response.sendRedirect
(yes I know those are not actual methods and classes, just trying to explain what I want)
 
If I am not explaining this well, please ask (I know its a lousy explaination)
 
Luc

Re: Response and file downloads

Posted by Justin Ruthenbeck <ju...@nextengine.com>.
Luc,

At 11:42 AM 11/1/2004, you wrote:
>I am having a wee problem with using the response.
>
>I have a form on a page, with a submit button to download a file. That 
>file is being pulled from a database and pushed to the response.
>The problem I am having, I just used that response to submit the page, 
>so I am getting and IllegalStateException, even though it is still 
>pushing the file to the browswer
>I also want to be able to send a redirect after the file is downloaded 
>(so I can refresh the page so the form submit page is regenerated, since 
>we are using a string to determine unique submits are only coming from 
>the pages we generated, and not the browser address bar)
>
>Can we get a new response from the session variable (the one available 
>to jsp writing) to send the file, then get another new response to 
>perform a redirect....
>Basically I want to be able to do something like
>
>the form submits, and passes to the applications perform methods through 
>the jsp catching the submit
>response = new Response
>response.sendFile
>response = new Response
>response.sendRedirect
>(yes I know those are not actual methods and classes, just trying to 
>explain what I want)

Your understanding of how, exactly, the http protocol works is 
incorrect.  Because it is a (single) request, (single) response protocol, 
what you're asking for cannot be done.

It seems like what you want is for a user to fill out a form, click 
submit, then be presented with a new, fresh, form again ... with the file 
download on the side.  If you have determined that you absolutely want 
this behavior (it's atypical, so doing it won't be particularly robust), 
consider programmatically opening another browser window on form submit 
from which the download will happen ... and reload your form in your 
"main" browser window.  This will, of course, subject you to any 
headaches associated with javascipt window opening.

justin



______________________________________________
Justin Ruthenbeck
Lead Software Engineer, NextEngine Inc.
justinr - AT - nextengine DOT com
Confidential. See:
http://www.nextengine.com/confidentiality.php
______________________________________________


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