You do have to choose with HTTP: either return HTML or other text, or return a binary file. No, you can't do both in one response (it's not like email with attachments and such).

If you take a look at all of the OOTB PDF responses you'll see they use the Screen Widget and such, but for a purely PDF binary response and not combined with HTML.

If you want both you can return HTML that has JavaScript in it that automatically sends a request for the binary file and if you do it right the effect will be that the user sees the HTML page and shortly thereafter a download automatically begins.

-David


On Jun 28, 2009, at 9:15 AM, Ruth Hoffman wrote:

Hello All:
Can I stream a PDF (from a file within the OFBiz directory) to a browser without getting a: java.lang.IllegalStateException: getOutputStream() has already been called for this response
error?

What I really want to do is stream a PDF file inline with my Screen Widget/Freemarker Template (so I can re-render the same form, without request parameters) that the User submitted to initiate the download. I apologize in advance if this seems like a trivial question - but I tried several different ways of coding this and they all come up with this error and (of course) my form still displays the previously entered request parameters. BTW, I don't get the error if I set my request-map type="none", but If I do that, then I can't redisplay the form (which I guess would be obvious to those who understand how this works :-)

Regards,
Ruth

Reply via email to