Hi All,
I am creating a list of map, in the map i am specifying both column and value dynamically. i could able to display using the display tag.
I am wondering how to enable Sorting on each column of the map.
note: i could find sortable column only in the <display:column ..> tag,. but i cannot use this in this case because, i don't know how many columns would i display each time.
following is the sample code i am using.
List listOfSearchValue = new ArrayList();
for(int i=0; i <10; i++)
{
SortedMap sortedMap = new TreeMap();
sortedMap.put("name","name_" + i);
sortedMap.put("address","address_" + i);
sortedMap.put("city","city_" + i);
sortedMap.put("state","state_" + i);
listOfSearchValue.add(sortedMap);
}
<display:table name="SearchResult" id= "result" requestURI="refferencePaResponseListPopulateAction.do" pagesize="15" sort="list" class="displaytablestyles" >
</display:table>
please help me to find a way to sort columns name, address, city and state in the above example.
Thanks
Guna
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You are right. The only place you can tell DisplayTag that the column should be sortable is in the <display:column> tag. You will need to find a way to store the names of the keys in your maps and iterate through them to create a series of <display:column> tags:
Hi All,
I am creating a list of map, in the map i am specifying both column and value dynamically. i could able to display using the display tag.
I am wondering how to enable Sorting on each column of the map.
note: i could find sortable column only in the <display:column ..> tag,. but i cannot use this in this case because, i don't know how many columns would i display each time.
following is the sample code i am using.
List listOfSearchValue = new ArrayList();
for(int i=0; i <10; i++)
{
SortedMap sortedMap = new TreeMap();
sortedMap.put("name","name_" + i);
sortedMap.put("address","address_" + i);
sortedMap.put("city","city_" + i);
sortedMap.put("state","state_" + i);
listOfSearchValue.add(sortedMap);
}
<display:table name="SearchResult" id= "result" requestURI="refferencePaResponseListPopulateAction.do" pagesize="15" sort="list" class="displaytablestyles" >
</display:table>
please help me to find a way to sort columns name, address, city and state in the above example.
Thanks
Guna
You are right. The only place you can tell DisplayTag that the column should be sortable is in the <display:column> tag. You will need to find a way to store the names of the keys in your maps and iterate through them to create a series of <display:column> tags:
<display:table name="SearchResult" id= "result" [snip] >
<c:forEach items="${mykeys}" var="key">
<display:column property="${key}" sortable="true"/>
</c:forEach>
</display:table>
Ed!