Discussion:
HTTP headers ? How to pipe an ASP file through ?
(too old to reply)
j***@hotmail.com
2006-07-11 08:17:02 UTC
Permalink
Hi Guys,

I have a problem, and I would be grateful for any help.

My WebApp has to do some database work in page1.ASP Because this may
take a few second, before Page1 connects to the database, it doeas a
"Response.Buffer=false", and pumps out a bit of javascript which
displays a progress bar.

SO far so good.

When the database call is completed, I then write out a bit more
javascript to stop the progress bar.

Now, I have a binary fields retrieved from the database, which needs to
be written like this :

<%
Response.ContentType = "application/pdf" [error]
response.BinaryWrite (mydatabase field)
%>

Of course I am getting an error about HTTP headers having been written
already.

Can anyone suggest a way that I can display this PDF from Page1.asp ?
At the moment, one I have done the database work (which populates the
database) I have to transfer to PAGE2.ASP which then has to open the
database, and retrieve the field again. The problem is that this
process takes a few seconds too, which also requires the progressbar
!!!!!

What I would like to do, (if it's possible) is something like this :

PAGE1.ASP
<%
...[code to intialise progressbar]...
...[database call]...
...[clear progress bar]...
...[write db field as PDF]...
%>

thanks in advance
Anthony Jones
2006-07-11 08:36:55 UTC
Permalink
Post by j***@hotmail.com
Hi Guys,
I have a problem, and I would be grateful for any help.
My WebApp has to do some database work in page1.ASP Because this may
take a few second, before Page1 connects to the database, it doeas a
"Response.Buffer=false", and pumps out a bit of javascript which
displays a progress bar.
SO far so good.
When the database call is completed, I then write out a bit more
javascript to stop the progress bar.
Now, I have a binary fields retrieved from the database, which needs to
<%
Response.ContentType = "application/pdf" [error]
response.BinaryWrite (mydatabase field)
%>
Of course I am getting an error about HTTP headers having been written
already.
Can anyone suggest a way that I can display this PDF from Page1.asp ?
At the moment, one I have done the database work (which populates the
database) I have to transfer to PAGE2.ASP which then has to open the
database, and retrieve the field again. The problem is that this
process takes a few seconds too, which also requires the progressbar
!!!!!
PAGE1.ASP
<%
...[code to intialise progressbar]...
...[database call]...
...[clear progress bar]...
...[write db field as PDF]...
%>
The request should ultimately return a PDF. Since a PDF doesn't begin with
Javascript code you've corrupted the download before you have even begun.

One thing you might try is an accessor page which launches a modeless dialog
containng your progress bar then navigates to the page that delivers the
PDF. The when the PDF starts to download the internal window containing
your accessor page will be closed to be replaced with the PDF at this point
the modelss dialog will be closed automatically for you.

I'm not sure how this would work in a non-IE environment though.
Post by j***@hotmail.com
thanks in advance
Loading...