从Java列表生成p:tabs [英] Generate p:tabs from Java List
本文介绍了从Java列表生成p:tabs的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从Java列表创建Primefaces选项卡.我测试了这段代码:
I want to create Primefaces tabs from Java List. I tested this code:
<p:tabView value="#{DatacenterProfileController.data}" var="listItem">
<p:tab title="#{listItem.name}">
<ui:insert>
<ui:include src="#{listItem.page}" />
</ui:insert>
</p:tab>
</p:tabView>
private List<PagesObj> dataList = new ArrayList<>();
public class PagesObj {
private String name;
private String page;
public PagesObj(String name, String page) {
this.name = name;
this.page = page;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPage() {
return page;
}
public void setPage(String page) {
this.page = page;
}
}
@PostConstruct
public void datagenerate(){
dataList.add(new PagesObj("General", "DCProfileTabGeneral.xhtml"));
dataList.add(new PagesObj("Zones", "DCProfileTabZones.xhtml"));
dataList.add(new PagesObj("Generators", "DCProfileTabGenerators.xhtml"));
dataList.add(new PagesObj("HVAC", "DCProfileTabHVACs.xhtml"));
}
public List<PagesObj> getdata() {
return dataList;
}
但是由于某些原因,选项卡的主体未正确加载-我得到的主体选项卡为空,可能是因为找不到文件.您能帮我解决问题吗?
But for some reason the body of the tabs is not loaded properly - I get empty body tab maybe because the file is not found. Can you help me to solve the problem, please?
推荐答案
I found that this is an issue, using include with tabView Issue 4051
这是可行的示例:
<p:tabView id="tabW">
<c:forEach items="#{DatacenterProfileController.data}" var="listItem">
<p:tab title="#{listItem.name}">
<h:panelGrid columns="2" cellpadding="10">
<ui:include src="#{listItem.page}.xhtml" />
</h:panelGrid>
</p:tab>
</c:forEach>
</p:tabView>
从此 primefaces论坛
这篇关于从Java列表生成p:tabs的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文