如何将<ui:component>放在带有primefaces的另一个<ui:component>中?</ui:component> </ui:component>

时间:2014-10-22 21:35:58

标签: java jsf primefaces

我正在努力实施<ui:compontes>。我能让这个szenario工作:

<html xmlns:p="http://primefaces.org/ui">

<p:tabview id="tab">
    <p:tab title="Client">
    <ui:include src="view/clients/clientMasterData.xhtml" />
    </p:tab>
</p:tabview>

但是,如果我放置“clientMasterData.xhtml”&#39;在另一个ui:component中,例如:

<!DOCTYPE html>
<ui:component id="clients"
xmlns:ui="http://java.sun.com/jsf/facelets" ... 
xmlns:p="http://primefaces.org/ui">

<h1 align="center">Client Page</h1>

<p:tabView orientation="left">
    <p:tab title="tab 1">
        <ui:include src="view/clients/clientMasterData.xhtml" />
    </p:tab>
    <p:tab title="tab 2">

    </p:tab>
    <p:tab title="tab 3">

    </p:tab>

</p:tabView>

我收到错误:<ui:include src="view/clients/clientMasterData.xhtml"> Invalid path : view/clients/clientMasterData.xhtml] with root cause javax.faces.view.facelets.TagAttributeException

但是从我之前的例子中我知道路径是正确的。

1 个答案:

答案 0 :(得分:0)

好吧,我发现了错误。我不尊重我的xhtml页面的层次结构。 解决方案是使用相对路径。在我的示例中:clients/clientMasterData.xhtml,因为父xhtml位于view/文件夹中。