我試圖以編程方式將sortBy
屬性放入primefaces數據表Column
中。我從DataTable繼承,並使用自定義的getColumns()
調用創建自己的列。以編程方式將sortBy屬性添加到primefaces DataTable列
遺憾的是似乎有插入sortBy屬性欄沒有乾淨的方法,因爲該方法卻並不知道它是在上下文。
public List<Column> getColumns() {
if (columns == null) {
columns = new ArrayList<Column>();
String[] columnStrings = getShowColumns().split(",");
for (String columnString : columnStrings) {
Column column = getColumnByType(columnString.trim());
if (column != null) {
//here I have to add the sortBy Expression somehow,
//but there is no context to construct it from
//column.setSortBy(ValueExpression)
columns.add(column);
}
}
}
return columns;
}
它似乎很明顯對我來說,我我錯過了一些東西,但我現在迷失了。 Column
似乎是填充ValueExpression
別的地方,但我不知道在哪裏...
我試圖通過所有的代碼使用調試器,但我不明白當ValueExpression是在原始實現中生成。任何提示讚賞。
非常感謝。我不知道我可以在單身人士的背景下使其工作。我仍然沒有得到什麼時候以及爲什麼通過引用來傳遞語境,但這是另一個問題。再次感謝! – devsnd 2012-04-11 09:15:19
不客氣。你可以在任何jsf相關的「對象」(比如beans,phaseListeners等等)中抽取上下文。但是,你必須要求在單獨的問題中得到更多有經驗的用戶和像BalusC這樣的專業人員的詳細答案。 – Fallup 2012-04-11 09:53:36