Есть способ возвратить фильтрованные данные. Вам нужен стол, который будет связан с отступающим свойством компонента, и вам нужен он, чтобы быть a rich:extendedDataTable
.
Binded attribute will be HTMLExtendedDataTable type. After that you will need to create an Ajax call when user types something in the filter, to be called. See
component and use it when a key is pressed, as:
Не забудьте называть метод Аякса на фильтрациях может быть хитрым. Я искренне предлагаю избежать встроенных фильтров стола и создать ваши таможенные, базирующиеся в h:inputText
и осуществить ваши требования ajax здесь. Можно смотреть в это связь.
Как только метод называют вами, просто должен получить фильтрованные ряды, вычислить общую сумму и вставить в переменной, по которой JSF обновит коробку, когда требование будет закончено. Что путь состоит в том, чтобы получить фильтрованные ряды? Там вы имеете:
public List filteredList() {
List list = new java.util.ArrayList();
int i = 0;
boolean loop = true;
while (loop) {
table.setRowKey(new Integer(i));
if (table.isRowAvailable()) {
list.add((E) table.getRowData());
i += 1;
} else {
loop = false;
}
}
table.setRowKey(null);
return list;
}
В основном это делает петлю, пока нет никаких более доступных рядов в столе.Good luck.