我与panelGrid有共同的形式:
<h:form id="formId">
<p:panelGrid columns="2" id="sdf">
<ui:include src="row1.xhtml"/>
<ui:include src="row2.xhtml"/>
</p:panelGrid>
</form>
和两个嵌套页面。 row1.xhtml:
<ui:fragment xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:outputText value="Text (column 1)"/>
<p:commandButton value="Batton (column 1)"/>
</ui:fragment>
和row2.xhtml:
<ui:fragment xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:outputText value="Text (column 2)"/>
<p:commandButton value="Batton (column 2)"/>
</ui:fragment>
在这种情况下,panelGrid适用于页面,而不适用于组件(outputText和commandButton):
文本(第1列)按钮(第1列)
文字(第2栏)按钮(第2栏)
但我需要这个:
文字(第1栏)按钮(第2栏)
文字(第1栏)按钮(第2栏)
我不能在一个页面中包含所有组件,因为我将参数传递给嵌套页面,这是 - 重新使用的组件,但我需要根据第一列支持对齐。
我使用:PrimeFaces 3.5和JSF 2.1.22
提前致谢!
答案 0 :(得分:0)
我在PrimeFaces论坛上找到了答案。它应该使用ui:composition而不是ui:fragment。
“来自文档”ui:fragment与ui:composition相同,除了两件事:JSF创建一个组件并将其直接添加到树中,并且没有关联的模板。“