Hi, many thanks for advice: I have enabled this log and I see the information that I attach. http://www.nabble.com/file/p20903814/committed.txt committed.txt
The problem seem to be the row "FINE: Response already committed " but I don't understand why the response was committed... I investigate on it. Regards, Marco Rainer Jung-3 wrote: > > Hi Marco, > > marcobalc schrieb: >> Hi, >> >> .ic is the extension mapped to the controllers of my spring webapp. >> >> The Excel is generated by a controller (servlet): this controller execute >> this instructions >> >> response.setContentType("application/excel"); >> response.setHeader("Content-Disposition","attachment; filename=\"" >> nomeFileExcel "\""); >> response.flushBuffer(); > > I see. Do you have any errors in our log files (Tomcat/Webapp), e.g. > about response already committed? It seems something either is sending > the headers to the web server before the code sets those headers above, > or they get reset after setting them. E.g. if the code under any > condition calls flushBuffer() before setting those headers, the response > will already be committed and you can't set the headers later on. Any > call to getWriter() also makes it impossible to set headers later. > > If there are no error messages, you could try to check via isCommitted() > before setting the headers to see, whether this assumption is true or not. > > You can also use register a ServletResponseWrapper in a filter to > intercept the calls to the ServletResponse and to debug, why and when > the response got committed prematurely (and also to see, whether your > setContentType() got actually called. > >> For the Excel the problem is repetitive but also for other "normal" html >> page (generated by jsp) the text/plain content/type was returned with >> random >> frequency. >> >> If on apache I add AddType *.ic text/html all the html page are ok but >> the >> excel are printed with binary format on the browser. >> >> So AddType is not the correct solution: I need that the content type is >> the >> content type returned by tomcat. > > Not sure, what that shows exactly, but you can set the log level of the > connector components higher by adding > > org.apache.coyote.level = FINEST > org.apache.jk.level = FINEST > org.apache.tomcat.level = FINEST > > to conf/logging.properties. > > The log will then also contain messages like > > Dec 8, 2008 4:00:05 PM org.apache.jk.core.MsgContext action > FINE: COMMIT > Dec 8, 2008 4:00:05 PM org.apache.jk.common.JkInputStream appendHead > FINE: COMMIT sending headers [EMAIL PROTECTED] === > MimeHeaders === > ETag = W/"16763-1201552728000" > Last-Modified = Mon, 28 Jan 2008 20:38:48 GMT > > So you can see the headers sent out by Tomcat. > > Regards, > > Rainer > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/bad-content-type-mod_jk-1.2.27-tp20892496p20903814.html Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]