I know there is only a single response, thats why I want to create a new one :)

I don't even want to get into opening other windows nor do I want to rely on 
javascript for required operation.

I am not sure what you are refering to as atypical or robustness...

How do other sites generate files on the fly (take it out of a database, or a report 
just run), on form submit, and send them down the line and not run into this problem?

I see many people posting many places on the net that they are using the response to 
send a file, a lot of them are getting this IllegalState, but I never really found a 
followup solution that really fit my needs.

Why would the possibility exist to push a file through the response if it leaves you 
with the ability to go nowhere after?

(not really questions possed to you Justin, just hoping to keep it alive)

-----Original Message-----
From: Justin Ruthenbeck [mailto:[EMAIL PROTECTED]
Sent: Monday, November 01, 2004 2:56 PM
To: Tomcat Users List
Subject: Re: Response and file downloads



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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


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

Reply via email to