【发布时间】:2015-02-17 18:08:53
【问题描述】:
我有两个嵌套复合
复合A
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core" xmlns:s="http://sig.com/faces"
xmlns:composite="http://java.sun.com/jsf/composite">
<composite:interface>
</composite:interface>
<composite:implementation>
<composite:insertChildren />
<p:separator />
</composite:implementation>
</ui:composition>
和复合B
(案例#1)
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core" xmlns:s="http://sig.com/faces"
xmlns:mycomposites="http://java.sun.com/jsf/composite/mycomposites"
xmlns:composite="http://java.sun.com/jsf/composite">
<composite:interface>
</composite:interface>
<composite:implementation>
<mycomposites:a>
<composite:insertChildren />
</mycomposites:a>
</composite:implementation>
</ui:composition>
终于有了我的视图或页面
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core" xmlns:s="http://sig.com/faces"
xmlns:gt="http://java.sun.com/jsf/composite/template"
xmlns:mycomposites="http://java.sun.com/jsf/composite/mycomposites"
template="/template/template.xhtml">
<ui:define name="body">
<mycomposites:b>
<h:outputText value="test" />
</mycomposites:b>
</ui:define>
</ui:composition>
“测试”未呈现。
对于我所看到的,这是因为 B 中的 insertChildren 在另一个复合材料 insertChildren (A) 中。
如果我将 B 中的 insertChildren 移动到复合材料之外,则可以正常工作,如下所示:
(案例#2)
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core" xmlns:s="http://sig.com/faces"
xmlns:mycomposites="http://java.sun.com/jsf/composite/mycomposites"
xmlns:composite="http://java.sun.com/jsf/composite">
<composite:interface>
</composite:interface>
<composite:implementation>
<mycomposites:desktop>
<!-- MOVED -->
</mycomposites:desktop>
<composite:insertChildren />
</composite:implementation>
</ui:composition>
但是 CASE #2 对我没有多大帮助。我需要它,就像案例 #2 一样
有什么帮助吗?
谢谢
【问题讨论】: