Release History

VersionDateDescription
1.0 January 1, 20051.0 happynewyear release
1.0-rc2 November 19, 2004Final 1.0 release candidate
1.0-rc1 July 11, 20041.0 release candidate.
1.0-b3 April 12, 2004last 1.0 beta
1.0-b2 December 8, 2003b2 is mainly focused on stabilizing the new 1.0 branch
1.0-b1 September 22, 2003first beta of the completely rewritten library
0.8.6 September 21, 2003Bugfix release (fixes jre 1.3 compatibility)
0.8.5 March 23, 2003
0.8 May 25, 2002
0.7 March 10, 2002
0 Jan 7th, 2002First public alpha feedback release

Get the RSS feed of the last changes

Release 1.0 - January 1, 2005

TypeChangesBy
fix Fixed some remaining https issues when saving exported files in Internet Explorer with the export filter enabled. fgiust
fix autolink working with https://, ftp://, etc. Fixes DISPL-150. fgiust
fix Column body is not rendered when requesting an invalid page. Fixes DISPL-136. fgiust
fix I18n Struts Adapter now works with Struts 1.1. Fixes DISPL-149. fgiust
fix Performance optimization: reduce the use of temporary StringBuffers while building the html table. Fixes DISPL-156. fgiust
fix Sporadic error with factory.requestHelper. Fixes DISPL-148. fgiust
add DisplayTag is now able to load displaytag.properties from a different classloader (allows displaytag.jar to be placed in appserver shared libs). Fixes DISPL-144. fgiust
fix Center of paging banner number. Fixes DISPL-109. fgiust
fix Tag holding references to resources. Fixes DISPL-145. fgiust
fix Export of nested tables: now you can export the parent table without errors; nested tables are not included during export. Fixes DISPL-142. fgiust

Release 1.0-rc2 - November 19, 2004

TypeChangesBy
fix getListIndex() in tableDecorator now correctly returns the index in the original list. Fixes 962448. fgiust
fix Proper encoding of URLs under JDK 1.4. Fixes 1006229. Thanks to Konstantin . fgiust
add Properties are looked up according to the locale of the request. More specific locales override more general locales on a key by key basis, so that, if a key is not present in the most specific locale file for a request, the tag will search through the more general files until the key is found. rapruitt
fix NullpointerException in HeaderCell. Fixes 1020948. fgiust
fix Param values not URLEncoded. Fixes 1016089. fgiust
update Exported output can now optionally be written directly (both with or without the export filter) and not buffered. Fixes DISPL-22. fgiust
fix Export filter not working in WebLogic. Fixes DISPL-21. fgiust
add Export system has been reworked, allowing registration of user-defined export views. A PDF export view has been added as an example (note that PDF export is not enabled by default in the distribution: you need to set the export.pdf=trueconfig parameter and include the required libraries). Public APIs for export views have changed (a new interface has been added). Fixes DISPL-13. Thanks to Ivan Markov . fgiust
fix Algorithm in org.displaytag.util.ParamEncoder produces easily colliding keys. Fixes DISPL-12. fgiust
add Enable / disable param forwarding. A new excludedParamsattribute has been added to the table tag, which allows you to specify the list of parameters which should not be forwarded during paging or sorting. *matches any parameter. Fixes DISPL-35. fgiust
fix The titleKeycolumn attribute has been added to the standard version of the taglib too. The i18n support for titleKey has been refactored, adding a configurable resource provider which can wrap the localization support of any used frameworks (JSTL, Struts, Spring adapter are included, other can be added be users). Fixes DISPL-53. fgiust
fix display-el:column titleKey not Resin compatible. Fixes DISPL-15. fgiust
fix Error: mediaType is already defined. To avoid errors when nested tables are used, the current mediaType is no more declared as a compile-time variable. This means that you can still retrieve the current media type using pageContext.getAttribute("mediaType")but not using a scriptlet like <%=mediaType%>. If you previously used this sintax you will have to fix your jsps when upgrading to 1.0 rc2. Fixes DISPL-6. fgiust
update The nameattribute in the EL version of table Tag will now work both with EL expressions and with the "standard" displaytag sintax. fgiust
update Column JSP body should only execute for rows being shown. Now column body is skipped if current row is not needed for display or sorting (be careful, if you sort the full list row need to be evaluated). Fixes DISPL-3. fgiust
fix Send user back to Page 1 on Desc/Asc. Fixes DISPL-9. fgiust
add More params for paging.banner.*_items_found. Fixes DISPL-26. fgiust
fix Html tags in "title" attribute when using maxLength. Fixes DISPL-4. fgiust
fix Autolink and maxlength problem. Fixes DISPL-1. fgiust
fix Unicode export with ResponseOverrideFilter fails because of improper content length setting. Fixes DISPL-73. Thanks to Mikko Wilkman . fgiust
update Ability to use java var in id attribute in tabletag. A new uidattribute has been added for jsp 1.0 containers (look at the FAQ for more details). Fixes DISPL-2. fgiust
add New htmlIdattribute which let you specify the value for the id attribute in the generated table. fgiust
add Webwork i18n support. Fixes DISPL-106. Thanks to Richard HALLIER . fgiust
add Need ability to disable prepending of context to the contents of the requestURI attribute. New requestURIcontexttable attribute added. Fixes DISPL-104. fgiust
add Using ColumnDecorator with tag body. Fixes DISPL-81. fgiust
add New sortPropertyattribute in column tag: specify property used for sorting. Fixes DISPL-58. fgiust
update Allow ColumnTag to generate links to current page. Fixes DISPL-117. fgiust
update Allow requestURI with only parameters. Fixes DISPL-112. Thanks to Paul McCulloch . fgiust
update Allow column href also if paramId is not defined. Fixes DISPL-130. fgiust

Release 1.0-rc1 - July 11, 2004

TypeChangesBy
fix The EL version of the taglib has been refactored and cleaned up. All the attributes, except deprecated ones, now accept EL expressions. fgiust
fix Improved attribute value handling following specifications for tag pooling. Should fix issues with Resin. Fixes 927804. fgiust
fix Modified attribute type specification in tld to match setters in tag classes and added unit tests. Fixes validation issues with WebLogic 8. fgiust
fix Added support for indexed/mapped properties in table decorators. Fixes 926213. fgiust
fix MaxLength not working with double quo tes. Fixes 920115. fgiust
add New property basic.msg.empty_list_rowwhich let you customize the message for an empty table while using basic.empty.showtable = true. This also allows you to customize the previously fixed "empty" css class. fgiust
fix Export links are not shown for empty tables. Fixes 895915. fgiust
fix ResponseOverrideFilter sets a bad contentType when charset is already specified. Fixes 921811. fgiust
fix Reset headers during export. This allows export with https and should fix reported problems with Tomcat 5.0. Fixes 938653. fgiust
fix Wrong tfoot position. Fixes 944863. fgiust
fix Fixed export.decorated property. Fixes 842234. fgiust
fix Context path is automatically added to "requestURI" table attribute (only if link starts with "/"). fgiust
fix The "url" column attribute, already available in the EL version form 1.0-b3, has been moved to the standard library. The "url" attribute has the same meaning as the "href" attribute, but always prepends the context path to the URI. Fixes 894839. fgiust
fix Column:autolink throwing exception or garbling urls. Fixes 952129. fgiust
fix Pagination urls parameters wrong for multiple table on the same page. Fixes 944056. Thanks to Sylvere Abbad . fgiust
fix Unable to set the table "name" attribute in jsp 1.1 containers after release 1.0-b3 ("Unable to convert a String to java.lang.Object for attribute value" error). Fixes 947752. fgiust
fix The export filter now only filters when needed. Response is not buffered when a special parameter inserted by displaytag in export links is not found. Fixes 958053. fgiust
fix Export cancel out UTF8 filter. Now headers are not reset during an export request. Only headers which could prevent caching are overwritten. Fixes 968559. fgiust
fix Automatic column discovery is turned off for Strings. Avoid displaying a single column " Bytes" when the source collection contains Strings. fgiust

Release 1.0-b3 - April 12, 2004

TypeChangesBy
fix The export filter introduced in b2 has been modified to avoid errors in Websphere 4 (or in any j2ee 1.2 containers, where the filter can't be used). rapruitt
update MediaTypeEnum has been moved to the org.displaytag.properties package. You will need to fix your imports if you started using with in the b2 release. fgiust
add All the css classes in the table tag are now customizable. You can change the original even, odd, sorted, order1, order2classes and also configure a css class to be added to any table or to any sortable column. Fixes 851250. fgiust
add Added the "defaultsort" attribute to change the sorting order for the default sorted column. Fixes 867217. fgiust
add Added a new configuration property basic.empty.showtablewhich let you choose if you want to display the table if the underlining list is empty. fgiust
fix Breaks on '%' in values. Fixes 840728. Thanks to David Kowis . fgiust
fix paramProperty is wrong when not fetched from iterated object. Fixes 849207. fgiust
fix requestURI parameters are overwritten by current values. Fixes 858888. fgiust
add Added the export.[exporttype ] .filename property. fgiust
fix Export error - Filter not working (wrong constant name). Fixes 882056. fgiust
add Added the "style" attribute to column tag. Fixes 887787. fgiust
fix Export filter was not preserving the locale setting. Fixes 860387. rapruitt
fix Export filter failed under Weblogic; fixed. Fixes 886495. rapruitt
fix RequestURI attribute does not handle anchors ('#') properly. Fixes 897946. fgiust
fix Sortable attribute not working. Fixes 873684. fgiust
add Added a captiontag to display a table caption. Fixes 886050. fgiust
update A new org.displaytag.util.ParamEncoderclass has been added, to allow users to generate encoded parameter names like tabletag does. Important! From now tables in the same pages which use the sorting, paging or exporting feature MUST have a different ID fgiust
add Added the new sort.amountconfiguration property. fgiust
update Switching from Cactus to Servletunit tests. Servletunit tests resulted simpler to implement and more effective in testing tag output. fgiust
add Test coverage reports added to the build. Free license for the displaytag project kindly donated by Clover. fgiust
fix Two /tbody generated. Fixes 891070. fgiust
add Support for arrays of Maps has been added in automatic column discovery. If you pass an array of map objects to the table tag the list of columns will be generated from the keys of the first map in the array. This allows to use the result of a jstl sql:query tag in a display:table without columns (use result .rows in the name attribute). fgiust
add Added Expression Support ala JSTL. To use it, just specify your taglib URI to be http://displaytag.sf.net/el. The EL sintax is replacing the old proprietary sintax in the table "name" attribute. Note that the old scopeand propertyattributes are no more supported in the EL version of the tag. EL support in this release is preliminary and it's due to change in next releases. Thanks to Tim McCune . mraible
add Added to the EL taglib only a "titleKey" attribute which will lookup it's value as a key in a JSTL bundle (declared using the < fmt:bundle tag or in your web.xml). mraible
add Added to the EL taglib only a "url" attribute is an enhancement to the "href" attribute which prepends the contextPath. mraible
fix URLs now include session information for page links, sort links, urls set with "requestURI" or "href". Also fixes reported NPE in tomcat. Fixes 902399. fgiust
add Binary releases are now compatible both with the 2.1 and 3.0 version of common-collections. Fixes 879038. fgiust
add RequestHelper implementation is now configurable and can be replaced by a user-defined one. This allows users to plug-in specific implementations. See the configuration page and the RequestHelper javadocs for more info. Fixes 917569. fgiust
fix Error in paging for URLs containing "{}". Fixes 917200. fgiust
add You can now set a property value in the body of a setProperty tag, instead of using the "value" attribute. fgiust

Release 1.0-b2 - December 8, 2003

TypeChangesBy
fix Invalid xhtml if empty list. Fixes 814470. fgiust
fix paging.banner.placement property. Fixes 749119. fgiust
add Automatic column discovery when no columns are defined. Instead of the simple output with the object toString() and the message "please define column tags", the table tag will automatically add columns mapped to object properties. This is especially useful in development to quickly see and test available properties. fgiust
update The following methods in TableDecorator are now correctly declared as final: getViewIndex(), getListIndex(), initRow(Object, int, int), getCurrentRowObject(). These methods should never be extended in subclasses of TableDecorator. fgiust
update Removed the valueproperty of ColumnTag. This was totally undocumented in previous versions and is now useless. fgiust
fix Body not cleared with pooled ColumnTags. Fixes 823383. fgiust
fix Sorting with table decorators. Fixes 814058. fgiust
fix Parameters not preserved in requestURI. Fixes 830652. fgiust
add Added a check for availability of correct version on commons-lang: a message is displayed if a wrong versio n is used. rapruitt
add New jsp 1.2 tld is available. Tag reference documentation is automatically produced from dtd. rapruitt
fix Column JSP body should not execute if the list is empty. Fixes 814462. fgiust
add Added filter (only for j2ee 1.3 containers) to allow exports from inside of an included JSP page. See the install docs and javadocs for more information. Fixes 820763. rapruitt
update Exported data is now properly escaped for the output format. fgiust
fix Include header in excel export. Fixes 773162. fgiust
fix Properties inheritance between table decorators. Fixes 840011. fgiust
fix User properties can now be loaded from files when deployed in unexploded WAR. Fixes 831806. rapruitt
update Altered the properties search process. Properties in the file displaytag.properties will now override properties from TableTag.properties. Users can add additional properties via the TableProperties#setUserProperties() method. rapruitt
add Added media attribute to ColumnTag. Broadened ExportTypeEnum to also cover the HTML case; renamed to MediaTypeEnum. Current mediaType exposed via scripting variable 'mediaType'. This can be used in column content to generate output based on madia type (don't output html when exporting and so on). rapruitt

Release 1.0-b1 - September 22, 2003

TypeChangesBy
add Mavenized! Thanks to Didier Dubois for the help on migrating the build system to maven. fgiust
update Totally refactored/rewritten. The whole library has been rewritten, improved package structure, code quality, logging and exception handling. fgiust
add Major addiction: the table tag works now also with an iterator approach, letting you specify content in the body of the column tag. fgiust
update Better html output. The rendered html code is now completely xhtml STRICT compliant. Some of the css classes have been changed, check the docs for upgrading from previous versions. fgiust
add Global configuration with a user supplied properties file (configured in web.xml) which lets you personalize most of the tag output. fgiust
add Link attributes are encoded to let you use more table in the same page with independent paging, sorting and exporting. You can also put nested display:table tag! fgiust
add Link parameters are preserved in paging/sorting. Paging will always keep the correct order, and it will also maintain the correct order/page for all the table displayed. fgiust
update Example site refactored (xhtml strict+css), added new samples. fgiust
add It's now possible to define objects/nested attributes with the beanutils style language + scope (ex. sessionScope.list.value.attribute(name).item[1 ] = session.getAttribute("list").getValue().getAttribute("name").getItem[1 ] ). fgiust
add Lots of small changes/addiction:
  • renamed attributes "styleClass" to standard "class" ("styleClass" is retained but deprecated)
  • added "defaultsort" attribute to specify the default sorted column
fgiust

Release 0.8.6 - September 21, 2003

TypeChangesBy
fix Fixed export of full list
fix Compiled binaries are compatible with jre 1.3 (8.5 version was not working on jre 1.3 due to optimized 1.4 compilation).

Release 0.8.5 - March 23, 2003

TypeChangesBy
add Allow column elements to be nested inside other tags. Thanks to Luiz-Otavio Zorzella . Luiz-Otavio Zorzella
add In decorators, added method getCollection() to allow for Collections, Iterators and Maps to be used as well as Lists. Thanks to Luiz-Otavio Zorzella . Luiz-Otavio Zorzella
add Original table tag only works with Lists. Now works with Collections, Iterators and Maps as well (though some functions, like group totals are not available to these, due to limitations on the structures themselves). Thanks to Luiz-Otavio Zorzella . Luiz-Otavio Zorzella
add Added star tRow() to the decorator API to allow people to put headers on groupings as well as footers. ed-hill
fix Fixed a caching bug in with tables that had multiple pages, the pageNumber is now reset to 1 in the tag object. ed-hill
fix Fixed various with URL rewriting (? vs & ). ed-hill
fix Correct error message on bean property lookups. ed-hill
update Build/Deploy process updates to be more dynamic. mraible

Release 0.8 - May 25, 2002

TypeChangesBy
add added various properties that can be override that effect the default strings and behaviors of table, here are some brief examples of message and behaviors that you can now set, see examples-config.jsp for a complete list [!! ] basic.show.header - include the header at the top of the table basic.msg.empty_list - string displayed when there are no items to show sort.behavior - sort just viewable items, or entire list export.banner - message format shown in footer, you can localize export.csv - include CSV export option export.csv.label - name of link (localize) export.csv.include_header - include the column titles in the export? export.amount - export just the page of data or the complete list export.decorated - decorate the data as it is exported?
add introduced two new column attributes "maxLength", "maxWords" that will restrict the size of strings being shown in a column. mraible
add introduced new column attribute "headerStyleClass" that allows you to override the class name used in drawing the table's header cell for that column.
add introduced ColumnDecorators - you can now decorate individual columns, this makes it easier for you to define reusable DateFmt, MoneyFmt, etc... decorators rather then developing a customer decorator for each table. Note, the decorator interface is still not to my liking, expect changes before this tag gets a 1.0 release. Thanks to Jay Paulsen . jay-paulsen
fix fixed a bug, where nulls were *not* being suppressed like they should be in the display, now nulls will only be shown if you specify the nulls attribute of the column tag. mraible
fix fixed my web.xml files in the various wars - they were not compliant and Tomcat would barf while deploying them - I'm now testing under JRun 3.1/4.0 and Tomcat 4.0.4b3. Thanks to Joachim Martin . Joachim Martin
fix fixed bug in example-styles.jsp, was using a variable "page" which is a rarely used standard JSP variable (JRun didn't care, Tomcat did), just renamed the variable so that example runs under Tomcat. Thanks to Joachim Martin . Joachim Martin
add fixed bug that prevented the first column from being sorted in both ascending and descending order
fix fixed a problem where a decorated table would interfere with fetching the source list on subsequent fetches
fix bug was introduced in 0.7 that prevented a decorated ob ject from being exported correctly, that has been fixed
fix bug was introduced in 0.7 that prevented a decorated object from being sorted correctly, that has been fixed
add included a copy of the Artistic license that this program is distributed under

Release 0.7 - March 10, 2002

TypeChangesBy
add added the requestURI attribute, so that you could tell the table tag what URI was used to call it.
fix fixed some exporting bugs, added the ability to export in XML, although at this stage it is very crude.
fix fixed sorting so that it sorts in both ascending and descending order based on multiple title clicks.
add updated all of the example jsp pages with a link that people can click on to view that pages source. Also re-organized the pages so that the example table was always at the top of the page as the first thing you saw, and the commentary behind the example followed.
fix The table tag now properly expects any decorators used to be children of the org.apache.taglibs.display.TableDecorator class (it was in the wrong package before). Reported by everyone...
fix Underscore is not a legal character in CSS, so the various style names and attributes where changes to be in uppercase format. - table_c ell -> tableCell - table_row_odd -> tableRowOdd - table_row_even -> tableRowEven - table_row_action -> tableRowAction - table_cell_action -> tableCellAction - table_row_header -> tableRowHeader - table_cell_header -> tableCellHeader. mraible
fix Cleaned up the other examples that were incomplete. Fixed broken links, etc...
fix Cloned the ColumnTags as I added them to the TableTag so that the table tag works correctly with web containers that reuse tags as an optimization. (Resin and Weblogic, probably others). This bug would manifest itself with multiple duplicated columns. Thanks to Jim Canter . Jim Canter
fix flushed out the example-export example that shows how to automatically export data to CSV, excel and XML formats.
fix flushed out the example-callback example that shows how to use a decorator to implement summing and totaling... The functionality was included in the original version, but there wasn't an example that showed how to use it.
fix fixed a NPE if you passed the table tag a null list.
update updated the example-grouping.jsp page to show a more report oriented example.
fix Included the pointer to the 2.2 DTD in the web.xml files. Thanks to Rob Evans .
update added 'flush="true"' to all of my jsp:includes in my examples to be more in sync with the JSP 1.1 spec. Thanks to Dirk Storck .

Release 0 - Jan 7th, 2002

TypeChangesBy
add No changes recorded prior to this release.