datatable paginator setFirst не работает

У меня есть следующая проблема:

На одном из моих сайтов у меня есть Datatable. Если я нажму на Entry, я попаду на другую страницу. Если я вернусь на страницу до того, как я захочу, чтобы Datatable был на той же странице, что и при нажатии на строку. Я могу установить страницу с событием page.

Я также могу попасть внутрь метода, где я хотел бы установить страницу. Код внутри выглядит так:

final DataTable d = (DataTable) FacesContext.getCurrentInstance()
            .getViewRoot().findComponent("form:persons");
if (d != null) {
    d.setFirst(currentPage);
}

Я думаю, это должно сработать, но с данными ничего не происходит. Я делаю что-то не так? На каком этапе я должен установить страницу?


person Rittel    schedule 12.09.2013    source источник
comment
Почему бы вам просто не использовать <p:dataTable first="#{bean.first}"> обычным декларативным способом, который приводит к гораздо более простому коду? Почему постоянная необходимость перетаскивать весь компонент из представления в метод вспомогательного компонента только для того, чтобы изменить атрибут?   -  person BalusC    schedule 12.09.2013
comment
Ооо.. Кажется, я что-то пропустил... Спасибо, BalusC :)   -  person Rittel    schedule 12.09.2013