Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 3.3
-
Fix Version/s: 4.0.BETA, EE-3.3.0.GA_P02, 4.0
-
Component/s: ACE-Components
-
Labels:None
-
Environment:Win 7, JDK 1.7.0_12-b02
-
Assignee Priority:P2
-
Salesforce Case Reference:
-
Affects:Compatibility/Configuration
-
Workaround Exists:Yes
-
Workaround Description:Explicitly convert the values of the select items to lower case. This does not work for all use cases as you might have select item that have the same value that differ only in case.
Description
During the processing of a request initiated by changing the filter (selecting another option in a dropdown) of a column, the transmitted value is set to lower case in
FilterState:53 ([...] saveState(filteredColumn, params.get(filteredId).toLowerCase()) [...])
This affects showing the selected option after rendering the updated table, as due to comparison mismatch always the first option available is shown but not the selected one.
While rendering the response DataTableHeadRenderer:375 does the comparison based on the select items (having their values in original case, while the transmitted value has been set to lower case).
I am not sure what class is in charge to set the value to lower case, but from my point of view it could be left to the implementations of FilterConstraint as it enables for having additional filters such as
* startsWithIgnoreCase
* endsWithIgnoreCase
* exactIgnoreCase
or to avoid breaking existing behaviour something like startsWithConsiderCase.
FilterState:53 ([...] saveState(filteredColumn, params.get(filteredId).toLowerCase()) [...])
This affects showing the selected option after rendering the updated table, as due to comparison mismatch always the first option available is shown but not the selected one.
While rendering the response DataTableHeadRenderer:375 does the comparison based on the select items (having their values in original case, while the transmitted value has been set to lower case).
I am not sure what class is in charge to set the value to lower case, but from my point of view it could be left to the implementations of FilterConstraint as it enables for having additional filters such as
* startsWithIgnoreCase
* endsWithIgnoreCase
* exactIgnoreCase
or to avoid breaking existing behaviour something like startsWithConsiderCase.
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Field | Original Value | New Value |
---|---|---|
Salesforce Case Reference | 5007000000VGXfeAAH |
Issue Type | Bug [ 1 ] | Improvement [ 4 ] |
Assignee | Judy Guglielmin [ judy.guglielmin ] | |
Fix Version/s | 4.0 [ 10770 ] | |
Fix Version/s | EE-3.3.0.GA_P02 [ 11371 ] | |
Assignee Priority | P2 [ 10011 ] |
Summary | DataTable filter value always set to lower case / filter value not shown in dropdown | Add new "...IgnoreCase" filterContraints to ace:column |
Assignee | Judy Guglielmin [ judy.guglielmin ] | Ken Fyten [ ken.fyten ] |
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Resolution | Fixed [ 1 ] | |
Status | Resolved [ 5 ] | Reopened [ 4 ] |
Comment |
[ ee-accessible jar is named ICEfacesAccessibleComponents rev 36382
ee-composite comps jar is named ICECompositeComponents rev 36379 ] |
Summary | Add new "...IgnoreCase" filterContraints to ace:column | ace:dataTable filter value always set to lower case / filter value not shown in dropdown |
Issue Type | Improvement [ 4 ] | Bug [ 1 ] |
Description |
During the processing of a request initiated by changing the filter (selecting another option in a dropdown) of a column, the transmitted value is set to lower case in
FilterState:53 ([...] saveState(filteredColumn, params.get(filteredId).toLowerCase()) [...]) This affects showing the selected option after rendering the updated table, as due to comparison mismatch always the first option available is shown but not the selected one. While rendering the response DataTableHeadRenderer:375 does the comparison based on the select items (having their values in original case, while the transmitted value has been set to lower case). I am not sure what class is in charge to set the value to lower case, but from my point of view it could be left to the implementations of FilterConstraint as it enables for having additional filters such as * startsWithIgnoreCase * endsWithIgnoreCase * exactIgnoreCase or to avoid breaking existing behaviour something like startsWithConsiderCase. (Sorry if I break any rules for creating a new issue but the guidlines for new issues (http://support.icesoft.com/jive/entry.jspa?entryID=691&categoryID=76) is not online. |
During the processing of a request initiated by changing the filter (selecting another option in a dropdown) of a column, the transmitted value is set to lower case in
FilterState:53 ([...] saveState(filteredColumn, params.get(filteredId).toLowerCase()) [...]) This affects showing the selected option after rendering the updated table, as due to comparison mismatch always the first option available is shown but not the selected one. While rendering the response DataTableHeadRenderer:375 does the comparison based on the select items (having their values in original case, while the transmitted value has been set to lower case). I am not sure what class is in charge to set the value to lower case, but from my point of view it could be left to the implementations of FilterConstraint as it enables for having additional filters such as * startsWithIgnoreCase * endsWithIgnoreCase * exactIgnoreCase or to avoid breaking existing behaviour something like startsWithConsiderCase. |
Assignee | Ken Fyten [ ken.fyten ] | Arturo Zambrano [ artzambrano ] |
Affects | Compatibility/Configuration [ 10002 ] |
Status | Reopened [ 4 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Fix Version/s | 4.0 [ 11382 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |