Andy, thanks for the feedback. I had already integrated your filter and TableTag class changes into the source of 1.0 beta. I can confirm that the filter is firing (I can see the log messages). Checking the headers with Firebird shows something strange. The content type header is not being sent at all! Obviously I've screwed something up while integrating your code into the package. Here are the headers that are being sent:
HTTP/1.x 200 OK Expires: Thu, 01 Jan 1970 00:00:00 GMT Date: Tue, 07 Oct 2003 01:55:04 GMT Pragma: No-cache Server: Apache Tomcat/4.1.24-LE-jdk14 (HTTP/1.1 Connector) Cache-Control: no-cache The only real edits I had to make was to the writeExport method of the TableTag class. I essentially just replaced the existing code with the following: pageContext.getRequest().setAttribute(ResponseOverrideFilter.CONTENT_OVERRID E_TYPE, pMimeType); pageContext.getRequest().setAttribute(ResponseOverrideFilter.CONTENT_OVERRID E_BODY, pExportString); return SKIP_PAGE; Could you send me the text of your writeExport method? Thanks, Scott PS: I've confirmed that when I disable the filter the content type header comes through successfully. -----Original Message----- From: Andy Pruitt [mailto:[EMAIL PROTECTED] Sent: Friday, October 03, 2003 9:12 PM To: [EMAIL PROTECTED] Subject: RE: [displaytag-devel] RE: [displaytag-user] Easy workaround to T iles/Export Issue It sounds as though the filter isn't catching the output. 1) Unless/until the fix to TableTag is committed, you have to run the tag as the TableTag that I attached to that message. I'm attaching compiled versions to this message; they would go in a com/backstopsolutions/web folder. 2) You have to change the TLD to have it refer to: <tagclass>com.backstopsolutions.web.TableTag</tagclass> instead of: <!-- <tagclass>org.displaytag.tags.TableTag</tagclass>--> 3) Do you see debug output? The filter is outputing a DEBUG message on the category com.backstopsolutions.web.TableTag. 4) Use Firebird and the Live Http Headers. It's the bomb. Watch the content-type that comes back from the page. Once/if the patch and filter are added to displaytag, you won't go through such hoops; it would only be a question of adding the filter mapping. > -----Original Message----- > From: RMC - Scott Mitchell [mailto:[EMAIL PROTECTED] > Sent: Friday, October 03, 2003 9:20 AM > To: [EMAIL PROTECTED] > Subject: RE: [displaytag-devel] RE: [displaytag-user] Easy > workaround to T iles/Export Issue > > > Andy, I agree whole-heartedly with you! I tried a small test > the other night and getting the filter configured wasn't a > big deal at all. Now having said that I did still wind up > with a problem. All the pages rendered fine, but when I > clicked on the Excel export link the data was displayed > directly in the browser as text. Is seemed like the content > type either didn't get set properly, or the browser somehow > ignored it. Any thoughts? > > Scott > > -----Original Message----- > From: Andy Pruitt [mailto:[EMAIL PROTECTED] > Sent: Friday, October 03, 2003 10:07 AM > To: [EMAIL PROTECTED] > Subject: RE: [displaytag-devel] RE: [displaytag-user] Easy > workaround to Tiles/Export Issue > > > > The issue is broader than just Tiles; it's anytime you need to > have an exportable table that is not in the first page > fragment to be processed. I've attached a test case to this > email; if you go > directly to test2.jsp export will work fine, but going to > test.jsp and > hitting export will output the file inline as text. > > It seems much more intrusive to say that: > 1) Your table must always appear on it's own page > 2) You must create actions for each of the export options > 3) Your code must be tied to the internal parameter > names from the > taglib > > Than to say; > just add this filter in web.xml if you want exports to work. > > > I'm never in favor of more configuration, but if someone has > already gone through > all of the trouble of configuring Tiles, I don't think it is > too outrageous for them to add a filter mapping to their web.xml. > > > > > > This will not work in the latest beta: > > The "exportType" parameter name changes for any table to allow > > placement of more tables on the same page. You should check for any > > parameter like d-????-e, (for example d-1234-e) > > > > See it on > > http://www.displaytag.org/displaytag-1.0-b1-examples/example-e > > xport.jsp > > > > fabrizio > > > > > > -----Original Message----- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] On > Behalf Of Matt > > Raible > > Sent: Friday, October 03, 2003 4:56 AM > > To: [EMAIL PROTECTED]; > > [EMAIL PROTECTED] > > Subject: [displaytag-user] Easy workaround to Tiles/Export Issue > > > > I figured out an easy "workaround" to the fact that > exporting doesn't > > work when using Tiles. The happens because the response > has already > > been committed by Tiles (when including previous JSPs) and the > > displaytag is unable to set the contentType. > > > > Here's how I'm doing it: > > > > In struts-config.xml, create a local forward that goes > directly to the > > JSP: > > > > <forward name="exportList" path="/WEB-INF/pages/userList.jsp"/> > > > > Then in your Action, add a little logic to see if you > should forward > > to the definition or to the list: > > > > // if exportType is a parameter, forward directly to JSP > > if (request.getParameter("exportType") != null) { > > if (log.isDebugEnabled()) { > > log.debug("export detected, forwarding directly to list > > jsp"); > > } > > > > return mapping.findForward("exportList"); > > } else { > > // return a forward to the user list definition > > return mapping.findForward("list"); > > } > > > > Tested with displaytag 0.8.5 on Windows XP and Tomcat 4.1.27. > > > > HTH, > > > > Matt > > > > > > > > > > ------------------------------------------------------- > > This sf.net email is sponsored by:ThinkGeek > > Welcome to geek heaven. > > http://thinkgeek.com/sf > > _______________________________________________ > > displaytag-user mailing list [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/displaytag-user > > > > > > ------------------------------------------------------- > > This sf.net email is sponsored by:ThinkGeek > > Welcome to geek heaven. > > http://thinkgeek.com/sf > > _______________________________________________ > > displaytag-devel mailing list [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/displaytag-devel > > > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > displaytag-devel mailing list [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/displaytag-devel > > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ displaytag-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/displaytag-devel
