Как использовать стратегию рендеринга калитки? - PullRequest
0 голосов
/ 28 декабря 2011

В калитке 1.5 используются ChildFirstHeaderRenderStrategy и ParentFirstHeaderRenderStrategy.

Есть ли кто-нибудь, кто может объяснить эти стратегии рендеринга в деталях и привести пример их использования при кодировании?

Я не знаю, где добавить эти стратегии рендеринга в мой код.

1 Ответ

3 голосов
/ 28 декабря 2011

В калитке 1.5 используются ChildFirstHeaderRenderStrategy и ParentFirstHeaderRenderStrategy.

Есть ли кто-нибудь, кто может объяснить эти стратегии рендеринга в деталях и привести пример их использования при кодировании?

Я не использовал их, но все равно могу немного объяснить. Они возникли из ошибки WICKET-2693 , где отмечается, что в Wicket 1.4 рендеринг заголовков был «обратным», т. Е. Дочерние компоненты, вносящие вклад в заголовок, добавляли свои части после родительских компонентов, затрудняя для страницы переопределение вещей из содержащихся компонентов. Это поведение, данное ParentFirstHeaderRenderStrategy. ChildFirstHeaderRenderStrategy - обратное: вклады от внутренних компонентов отображаются раньше, чем вклады их родителей, и это значение по умолчанию в калитке 1.5. См. Выше отчет об ошибке для более подробной информации и для некоторых интересных дебатов между командой разработчиков калитки.

Я не знаю, где добавить эти стратегии рендеринга в мой код.

На самом деле вы не можете сделать это в коде. Они намеренно затруднили изменение и применили его ко всему приложению. Он управляется системным свойством.

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

-DWicket_HeaderRenderStrategy=org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy

Есть также проблемы WICKET-4235 и WICKET-4000 , связанные с этим, что они не работают должным образом с вкладами из <header> разделов фрагментов HTML.

...