Ok so I had a bunch of filters all rendered from a backing bean using the forEach tag to render the select items.
On updating the table the filters would always have the size of the initially selected item - not good.
So if you fist selection had one item in the filter the filter would always be one item big.
SOLUTION:
Changed from a forEach to a f:SelectItems creating the Select items in my backing bean - everything worked.
Nice and simple.
public List<SelectItem> listUniqueSelectItemList(List<String> items) {
List<SelectItem> itemList = new ArrayList<SelectItem>();
if (items != null) {
for (String item : items) {
itemList.add(createSelectItem(item));
}
}
return itemList;
}
private SelectItem createSelectItem(String filter) {
return new SelectItem(filter, filter);
}
<af:selectOneChoice value="#{pageFlowScope.testBean.stringFilterValue}"
id="soc1"
unselectedLabel="#{bundle['test.unselected.label']}"
label="filter"
autoSubmit="true">
<f:selectItems value="#{pageFlowScope.scheduleBean.listUniqueTestItems}"
id="fe_it"/>
</af:selectOneChoice>
On updating the table the filters would always have the size of the initially selected item - not good.
So if you fist selection had one item in the filter the filter would always be one item big.
SOLUTION:
Changed from a forEach to a f:SelectItems creating the Select items in my backing bean - everything worked.
Nice and simple.
public List<SelectItem> listUniqueSelectItemList(List<String> items) {
List<SelectItem> itemList = new ArrayList<SelectItem>();
if (items != null) {
for (String item : items) {
itemList.add(createSelectItem(item));
}
}
return itemList;
}
private SelectItem createSelectItem(String filter) {
return new SelectItem(filter, filter);
}
<af:selectOneChoice value="#{pageFlowScope.testBean.stringFilterValue}"
id="soc1"
unselectedLabel="#{bundle['test.unselected.label']}"
label="filter"
autoSubmit="true">
<f:selectItems value="#{pageFlowScope.scheduleBean.listUniqueTestItems}"
id="fe_it"/>
</af:selectOneChoice>
Comments
Post a Comment