472,096 Members | 2,281 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,096 software developers and data experts.

HTTP headers ? How to pipe an ASP file through ?

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

Jul 11 '06 #1
2 1719

<je*******@hotmail.comwrote in message
news:11**********************@b28g2000cwb.googlegr oups.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
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]...
%>
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.
thanks in advance

Jul 11 '06 #2
Not sure if this follows your business rules, but what I've done in the past
is create an actual PDF file in a temp virtual directory, and then have the
page that created the file redirect to that file. If the information is
sensitive, make sure you have some sort of cleanup routine (possibly
triggered when a session ends).

"je*******@hotmail.com" wrote:
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

Aug 31 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by Martin Kofahl | last post: by
1 post views Thread by Brad Murdoch | last post: by
5 posts views Thread by richard | last post: by
15 posts views Thread by Dave | last post: by
6 posts views Thread by Chapman Flack | last post: by
7 posts views Thread by Greg | last post: by
11 posts views Thread by 7stud | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.