Следующая проблема:
Нам нужно отобразить несколько строк на ячейку в нашей таблице данных, например:
ID1 | Value1 | further columns....
| Value2 | further columns....
ID2 | Value3 | further columns....
| Value4 | further columns....
| Value5 | further columns....
ID3 | Value6 | further columns....
ID4 | | further columns....
Мы сделали это с несколькими строками на столбец:
<p:column>
<p:repeat value="#{entry.data1}" var="data">
<div style="height:20px">
<h:outputText value="#{data.data}"/>
</div>
<br/>>
</p:repeat>
</p:column>
Мы определяем наши заголовки с помощью:
<p:column sortBy="#{bean.getFirstValueOfSubList()}"
filterBy=""/>
И наши данные выглядят так (список DataClass
в нашем Бине):
public class DataClass {
private int id;
private List<SubData> subDataList;
// further columns
}
public class SubData {
private int id;
private double data;
// further data
}
Мы должныСортировать по первой записи в нашем подсписке.Мы сделали это с помощью функции, возвращающей первую запись.Это уже работает.
Что нам теперь нужно сделать, так это фильтрацию.Мы должны фильтровать пользовательский ввод и отображать только строки, содержащие отфильтрованные данные, а в строках только значения, которые отфильтрованы.
Например, если я отфильтрую в списке вверху сообщения значение Value4
, должен быть возвращен следующий список:
ID2 | Value4 | futher columns....
Кто-нибудь знает, как это сделать??