Имея этот Xhtml код:Что происходит с TabView Primefaces компонента
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>Simple JSF</title>
</h:head>
<h:body>
<h:form>
<ui:repeat value="#{cart.items}" var="item">
<h:panelGrid columns="2" cellpadding="10">
<h:outputText value="#{item}" />
</h:panelGrid>
</ui:repeat>
</h:form>
</h:body>
</html>
И боб:
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean(name = "cart")
@SessionScoped
public class CartBean {
private List<String> items;
public CartBean() {
items = new ArrayList<>();
items.add("shirt");
items.add("skirt");
items.add("trouser");
}
public List<String> getItems() {
return items;
}
}
Показывает три соответствующие пункты в outputText: "рубашка", "юбки" и " брючный» Но, изменив тело, как показывает XHTML:
<h:body>
<h:form>
<p:tabView >
<ui:repeat value="#{cart.items}" var="item">
<p:tab title="#{item}">
<h:panelGrid columns="2" cellpadding="10">
<h:outputText value="#{item}" />
</h:panelGrid>
</p:tab>
</ui:repeat>
</p:tabView>
</h:form>
</h:body>
Показаны TabView ш нажмите только одну вкладку (вместо трех) и без текста на вкладке. Я не понимаю, зачем потерять данные?
я уже пробовал раньше, но я получаю сообщение об ошибке: com.sun.faces.facelets.compiler.UIInstructions нельзя передать в org.primefaces.component.tabview.Tab – Juaky73