Message: The following issue has been resolved as CANNOT REPRODUCE.
Resolver: fabrizio giustina Date: Thu, 30 Dec 2004 12:09 PM this works for me, and the proposed patch seems to have no effects. I added a testcase for the addParameter method in Href, please check it to see if it correctly reproduces your test case: org.displaytag.util.HrefTest.testAddParameterMapMultiValue() In your patch you simply replaced this.parameters.put(key, value); with this.parameters.put(key, values); but this has no effects since "value" and "values" referes to the same object: String[] values = (String[]) value; --------------------------------------------------------------------- View the issue: http://jira.codehaus.org/browse/DISPL-163 Here is an overview of the issue: --------------------------------------------------------------------- Key: DISPL-163 Summary: request parameters not apanded correctly for paging links Type: Bug Status: Resolved Priority: Major Resolution: CANNOT REPRODUCE Original Estimate: Unknown Time Spent: Unknown Remaining: Unknown Project: DisplayTag Components: Paging/Sorting Fix Fors: 1.0 Versions: 1.0 RC2 Assignee: fabrizio giustina Reporter: abhishek sehgal Created: Thu, 30 Dec 2004 8:41 AM Updated: Thu, 30 Dec 2004 12:09 PM Description: We are trying to work around and use display tag to implement the display of dynamic colums. i.e. out of the available columns we display tonly the columns selected by the user. This works fine for the first page of the results, as teh column names are available in request but it does not work for the paging links as the values for a multi value parameter 'tofield' are lost. I have fixed this issue by making the following change to Href.java public void addParameterMap(Map parametersMap) { // handle nulls if (parametersMap == null) { return; } // copy value, escaping html Iterator mapIterator = parametersMap.entrySet().iterator(); while (mapIterator.hasNext()) { Map.Entry entry = (Map.Entry) mapIterator.next(); String key = StringEscapeUtils.escapeHtml((String) entry.getKey()); // don't overwrite parameters if (!this.parameters.containsKey(key)) { Object value = entry.getValue(); if (value != null) { if (value.getClass().isArray()) { String[] values = (String[]) value; for (int i = 0; i < values.length; i++) { values[i] = StringEscapeUtils.escapeHtml(values[i]); } this.parameters.put(key, values); } else { value = StringEscapeUtils.escapeHtml(value.toString()); this.parameters.put(key, value); } } } } } For multi value parameters the original code was escaping the HTML and assigning into values but was still adding the value array. I changes the code to add the values array in case we have a multi value parameter. I have this code available. Either you can make the change available in a new release or let me know a way I can submit this code. I tried to connect to the cvs repository as an anonymous user but got a login failure. The fix is important as this is required to pass parameters with special characters in the paging links. --------------------------------------------------------------------- JIRA INFORMATION: This message is automatically generated by JIRA. If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ displaytag-devel mailing list displaytag-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/displaytag-devel