Добавление JSF UIComponent в качестве составного компонента дочерний ничего не отображает - PullRequest
0 голосов
/ 23 ноября 2010

У меня есть пользовательский UIComponent, который хорошо обрабатывается при вызове напрямую из шаблона базовой лицевой стороны (я думаю, это делает его прямым потомком UIComponentBodyTag). Однако когда он вызывается внутри составного компонента, ничего не происходит. Я не получаю никаких исключений, ничего. Все остальное делает хорошо.

Итак, пока это работает:

<h:body>
    <x:myUiComponent />
</h:body>

Это не работает:

<h:body>
    <demo:uiComponentWrapper />
</h:body>

uiComponentWrapper.xhtml:

<cc:implementation>
    Before [<x:myUiComponent />] After
</cc:implementation>

Он печатается просто как Before [] After.

По моей логике, это должно работать. Что мне не хватает? Запуск Мохарры 2.0.2.

1 Ответ

0 голосов
/ 26 ноября 2010

Кажется, что UIComponent 'encodeAll(...) вызывается, когда он добавляется на страницу в обычном режиме. Однако вместо этого вызывается encodeBegin(...), когда компонент добавляется как дочерний компонент составного компонента. Моя сборка компонента была определена в encodeAll(...), который не запускался при добавлении компонента в качестве дочернего компонента составного компонента.

Так что это просто по-разному в разных контекстах. По той причине, почему это так, см. вопрос о том, что именно .

...