вставки / определения граней со значением привязки выражения - PullRequest
0 голосов
/ 29 февраля 2012

Я пытаюсь привязать свойство компонента к атрибуту ui: insert name.

<ice:panelTabSet var="tab" items="#{mainTabsTempl.tabs}">               
    <ice:panelTab label="#{tab.label}">  
        <ui:insert name="#{tab.tabContentUIName}">   
           content of #{tab.tabContentUIName} tab   
        </ui:insert>    
    </ice:panelTab>  
</ice:panelTabSet>

и ui: insert , чтобы увидеть это выражение привязки значения как строку.

Есть ли способ передать выражение привязки значения?

1 Ответ

1 голос
/ 01 марта 2012

Теперь я вижу, чего вы пытаетесь достичь. К сожалению, это невозможно по крайней мере по двум причинам. Первый ui:insert поддерживает только литералы. Он явно проверяет атрибут name и выдает исключение, когда он не является литералом. Вторая причина заключается в том, что panelTabSet является компонентом, поэтому его переменная - "tab" в вашем случае - доступна на этапе рендеринга, тогда как ui:insert / ui:define - обработчики тегов, выполняемые во время построения представления.

Вы можете попытаться перефразировать ваш вопрос и спросить снова. Насколько я понимаю, вы хотите иметь обогащенный шаблон / компонент набора вкладок, в который можно передать ряд аспектов, которые будут использоваться в качестве отдельных вкладок. Я думаю, будет пытаться составные компоненты и insertFacet с f:facet. Хотя я не использовал составные компоненты, поэтому не смогу здесь помочь.

...