Как получить AjaxRequestTarget внутри метода onbeforerender() Wicket компонента?

У меня есть событие Ajax, которое вызывает перерисовку различных панелей калитки. Некоторые панели имеют собственные дополнительные вычисления внутри метода onBeforeRender (). Если есть ошибка, Я хочу отобразить ее пользователю. Но я не могу добавить FeedbackPanel в AjaxRequestTarget, потому что у меня больше нет доступа к нему внутри перерисовываемой панели.

есть ли способ получить AjaxRequestTarget внутри onBeforeRender () компонента калитки? Это даже можно ли добавить дополнительные компоненты в цель Ajax, когда первые из них уже находятся в состоянии onBeforeRender ()?

есть ли лучший способ добавить FeedbackPanel в цель Ajax, если только панели, которые нужно перерисовать, могут решить, есть ли ошибка или нет?

1 ответов


получение AjaxTarget делается так:

AjaxRequestTarget target = requestCycle.find(AjaxRequestTarget.class);

к сожалению, как и ожидалось, я не могу добавить компоненты к цели, как только я нахожусь в фазе рендеринга. Но калитка обеспечивает интерфейс ITargetRespondListener методом onTargetRespond(AjaxRequestTarget target). Здесь я могу добавить к цели все, что захочу.