Можно ли обновлять заголовки AjaxFallbackDefaultDataTable через AJAX? - PullRequest
0 голосов
/ 11 января 2012

Я сейчас пишу веб-приложение.Я использую AjaxFallbackDefaultDataTable для отображения объектов домена.Таблицы включают нумерацию страниц, и пока все работает отлично.

Что я хочу сделать: в моей реализации IColumn<T> я возвращаю свой собственный компонент заголовка через Component getHeader(String componentId).Этот компонент зависит от страницы и размера страницы, который в данный момент используется таблицей (он показывает ссылку на другую страницу, которая должна заботиться только о текущей части данных).Теперь я реализовал метод void onPageChanged() таблицы, чтобы он соответствующим образом обновлял столбцы.

Проблема: Я использую окно отладки Ajax Wicket, и оно показывает, что всетаблица перерисовывается на сервере и отправляется клиенту.Однако заголовки, похоже, не обновляются правильно, так что я навсегда застрял на странице 0. Используя отладчик, я ясно вижу, что Component getHeader(String componentId) вызывается только один раз, когда таблица создается изначально.

Вопрос: Можно ли как-то решить эту проблему, не написав собственную реализацию таблицы данных AJAXified?Если нет, то кто-нибудь может указать мне правильное направление?

1 Ответ

1 голос
/ 11 января 2012

HeadersToolbar создает заголовки только один раз.

Либо вы реализуете собственную панель инструментов, воссоздающую заголовки перед каждым рендерингом, либо переписываете свой компонент заголовка, чтобы всегда отображать актуальную ссылку.

...