OTH, if the stacktrace suggests the exception originates at the line
containing response.setHeader/response.setContentType the problem might be
upstream.
In both cases the struts users list will be more helpful than poi.

Regards,
Tahir Akhtar

> -----Original Message-----
> From: Tahir Akhtar [mailto:[EMAIL PROTECTED]
> Sent: Monday, May 28, 2007 1:07 PM
> To: 'POI Users List'
> Subject: RE: Excel, Struts and Downloading
> 
> Hi Jon,
> I am no struts expert but I think your problem lies in trying to do a
> forward after the writing to servlet output stream (through poi). You
> should
> not try to send a redirect after generating content on a stream.
> 
> I don't know why it was working with older version of struts. Have you
> changed your action mappings during the upgrade?
> 
> May be you can get some ideas from here
> http://wiki.apache.org/struts/StrutsFileDownload
> 
> Regards,
> Tahir Akhtar
> 
> > -----Original Message-----
> > From: Jon Wynacht [mailto:[EMAIL PROTECTED]
> > Sent: Monday, May 28, 2007 2:57 AM
> > To: poi-user@jakarta.apache.org
> > Subject: Excel, Struts and Downloading
> >
> > Hi,
> >
> > I used to run Struts 1.2.9, POI 2.5 and could generate Excel files
> > from a servlet and download them without issue. I recently upgraded
> > to Struts 1.3.5 and POI 3 and it looks like I broke that capability.
> > I'm getting the following error:
> >
> > java.lang.IllegalStateException: getOutputStream() has already been
> > called for this response
> >
> > I've searched through the Net and the archives here for info but
> > nothing really seems to fit for my situation; it's mostly JSP.
> >
> > I'm calling an Action servlet which makes a call to the model and
> > gets some data, creates a new workbook and then does this:
> >
> > <snip>
> >             response.setContentType("application/vnd.ms-excel");
> >                  response.setHeader("Content-disposition",
> > "attachment;filename=\"attendees.xls\"");
> >                  response.addHeader("Content-description", "Event
> > Attendees");
> >                  ServletOutputStream stream = response.getOutputStream
> > ();
> >                  wb.write(stream);
> >                  stream.close();
> >             ...
> >             forward = "SUCCESS";
> >             ...
> >             return mapping.findForward(forward);
> > </snip>
> >
> > It's what I did before I upgraded and things worked fine. Now they don't
> >
> > Any ideas? Am I missing something really obvious or was I bending the
> > rules a bit and taking chances with my data in my previous config?
> >
> > Cheers and thanks,
> >
> > Jon
> >
> > Jon Wynacht
> > [EMAIL PROTECTED]
> > http://www.objectevolution.com
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > Mailing List:     http://jakarta.apache.org/site/mail2.html#poi
> > The Apache Jakarta Poi Project:  http://jakarta.apache.org/poi/
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> Mailing List:     http://jakarta.apache.org/site/mail2.html#poi
> The Apache Jakarta Poi Project:  http://jakarta.apache.org/poi/




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
Mailing List:     http://jakarta.apache.org/site/mail2.html#poi
The Apache Jakarta Poi Project:  http://jakarta.apache.org/poi/

Reply via email to